Rails:validation多个模型的唯一性

有没有办法在两个不同模型中的列之间validation属性的唯一性。 例如:

我有自行车模型和汽车模型。 当我创建一个新的自行车时,我想validation自行车的名称是独一无二的,因为没有其他自行车或具有该名称的汽车。 我不想将它们放在一个模型中,因为它们具有非常不同的属性。 我在轨道上2.3.8

谢谢。

Rails不会自动validation模型(我不认为,不管怎样)。 您应该只是编写自己的方法来检查,…

class YourModel < ActiveRecord::Base validates :uniqueness_of_a_property_across_models def uniqueness_of_a_property_across_models // check the other model end end 

也许你的汽车和自行车模型可以有一些常见的属性,比如这个名字,它们都可以inheritance一个通用模型,并在这个模型上进行唯一性validation?