我有一个属于“Store”的模型“Product”(has_many“products”)。 我想验证产品名称的唯一性,但仅限于每个商店。
现在我有这个:
class Product < ActiveRecord::Base
belongs_to :store
validates_uniqueness_of :name, :scope => :store_id
end
当我在任何产品上运行保存时,我得到:
SQLite3::ConstraintException: column name is not unique
我确信我在这里犯了一个简单的错误。请教育我。
谢谢,
哈里斯
答案 0 :(得分:2)
看起来这个错误来自SQLite,而不是Rails。检查数据库级别的约束 - 可能您在:name而不是[:name,:store_id]上添加了一个唯一约束。