Ruby on rails Rails:跨多个模型验证唯一性
是否有方法验证两个不同模型中列之间属性的唯一性。例如: 我有一个自行车模型和一个汽车模型。创建新自行车时,我希望验证自行车的名称是否唯一,因为没有其他自行车或汽车具有该名称。我不想把它们放在一个模型中,因为它们有着截然不同的特性。我在轨道2.3.8上Ruby on rails Rails:跨多个模型验证唯一性,ruby-on-rails,models,validation,unique,Ruby On Rails,Models,Validation,Unique,是否有方法验证两个不同模型中列之间属性的唯一性。例如: 我有一个自行车模型和一个汽车模型。创建新自行车时,我希望验证自行车的名称是否唯一,因为没有其他自行车或汽车具有该名称。我不想把它们放在一个模型中,因为它们有着截然不同的特性。我在轨道2.3.8上 谢谢。Rails不会自动跨模型验证(无论如何,我不认为)。你也许应该写你自己的方法来检查,一个la class YourModel < ActiveRecord::Base validates :uniqueness_of_a_prope
谢谢。Rails不会自动跨模型验证(无论如何,我不认为)。你也许应该写你自己的方法来检查,一个la
class YourModel < ActiveRecord::Base
validates :uniqueness_of_a_property_across_models
def uniqueness_of_a_property_across_models
// check the other model
end
end
classyourmodel
也许你的汽车和自行车模型可以有一些像这个名字一样的共同属性,它们都可以继承一个共同的模型,并且在这个模型上有你的唯一性验证?谢谢,我就是这么想的,但是我想确保我不能在Rails 3和4中的一行中进行验证。对于自定义验证,您必须编写validate
,而不是validates
。