Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:跨多个模型验证唯一性_Ruby On Rails_Models_Validation_Unique - Fatal编程技术网

Ruby on rails Rails:跨多个模型验证唯一性

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

是否有方法验证两个不同模型中列之间属性的唯一性。例如:

我有一个自行车模型和一个汽车模型。创建新自行车时,我希望验证自行车的名称是否唯一,因为没有其他自行车或汽车具有该名称。我不想把它们放在一个模型中,因为它们有着截然不同的特性。我在轨道2.3.8上


谢谢。

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