0

我有一个用户模型,其中包含电子邮件和大学 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)

我知道 email 不是唯一的,但是这对 email, university_id 是唯一的,那么为什么我会收到这个异常,我该如何解决呢?

谢谢!

4

1 回答 1

0

如果您的数据库中有唯一性约束,它可能与 ActiveRecord 的唯一性约束冲突。检查您的迁移并删除约束(如果存在)。

于 2012-08-12T06:09:01.390 回答