我有一个用户模型,其中包括电子邮件和university_id
我已将以下行添加到我的模型文件中:
validates_uniqueness_of :email, :scope => [:university_id]
但是当我尝试使用相同的电子邮件但不同的university_id创建用户时,我收到以下错误消息:
ActiveRecord::RecordNotUnique in UsersController#create
SQLite3::ConstraintException: column email is not unique: INSERT INTO "users" ("name", "email", "password", "created_at", "updated_at", "university_id") VALUES ('my name', 'myusername', 'asdfgh', '2012-08-12 04:31:39.135115', '2012-08-12 04:31:39.135115', 2)
我知道电子邮件不是唯一的,但university_id对电子邮件是唯一的,那么为什么我会收到此异常以及如何解决它?
谢谢!
如果您的数据库中存在唯一性约束,则它可能与 ActiveRecord 的唯一性约束冲突。检查迁移并删除约束(如果存在)。