我不清楚这种方法实际上做了什么或何时使用它。
假设我有这些模型:
Person < ...
# id, name
has_many :phone_numbers
end
PhoneNumber < ...
# id, number
belongs_to :person
validates_length_of :number, :in => 9..12
end
当我为这样的人创建电话号码时:
@person = Person.find(1)
@person.phone_numbers.build(:number => "123456")
@person.phone_numbers.build(:number => "12346789012")
@person.save
保存失败,因为第一个数字无效。这对我来说是件好事。但我不明白的是,如果它已经验证了关联的记录,那么函数 validates_related 是什么?