验证模型的子类中的关联

时间:2015-12-09 05:58:41

标签: ruby-on-rails ruby activerecord model-associations activemodel

我在验证派生类中是否存在关联时遇到了奇怪的问题。

Class Contact < ActiveRecord::Base

  has_and_belongs_to_many :things

end

Class SubContact < Contact

# validates_presence_of :things
  validate :must_have_things

  def must_have_things
    if things.blank?
      errors.add("Must select things")
    end
  end

end

SubContact课程中,我试图验证事物的存在,但没有任何工作。我尝试过自定义和内置验证器 我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:3)

add需要一个属性。尝试使用:

errors.add(:base, "Must not be blank")

在这种情况下,它是基类,但它也可以是任何其他属性。提及SubContract类的属性名称或:base