验证关联模型的特定属性

bri*_*ran 1 ruby validation ruby-on-rails-3 ruby-on-rails-3.1

验证关联模型属性的最简单的方法是什么?

Item
  belongs_to :user
  validates_presence_of :user
  # AND the "is_photographer" column for that user must be true

User
  has_many :items
  # can be a regular user or a photographer
Run Code Online (Sandbox Code Playgroud)

Dog*_*ert 5

validate :user_is_photographer, :if => :user

def user_is_photographer
  errors.add(:user, "should be a photographer") unless user.is_photographer
end
Run Code Online (Sandbox Code Playgroud)