我使用Rails 3.0.0.beta4
我想在两个属性上添加唯一性验证,这意味着如果'recorded_at'
和'zipcode'
的一对是唯一的,我的模型就有效。
这里的一个属性是语法
validates :zipcode, :uniqueness => true
感谢
答案 0 :(得分:322)
在Rails 2中,我会写:
validates_uniqueness_of :zipcode, :scope => :recorded_at
在Rails 3中:
validates :zipcode, :uniqueness => {:scope => :recorded_at}
对于多个属性:
validates :zipcode, :uniqueness => {:scope => [:recorded_at, :something_else]}
答案 1 :(得分:93)
class TeacherSchedule < ActiveRecord::Base
validates_uniqueness_of :teacher_id, :scope => [:semester_id, :class_id]
end
http://apidock.com/rails/ActiveRecord/Validations/ClassMethods/validates_uniqueness_of
这应该回答格雷格的问题。
答案 2 :(得分:4)
不要为我工作,需要将范围置于复数
validates_uniqueness_of:teacher_id,:范围 s =&gt; [:semester_id, :类标识码]