【发布时间】:2011-03-25 19:04:09
【问题描述】:
validates :presence 和 validates_presence_of 有什么区别?查看ActiveModel 看起来他们以相同的方式设置验证。但是,给定以下模型定义:
class Account < ActiveRecord::Base
has_one :owner_permission, :class_name => 'AccountPermission', :conditions => { :owner => true, :admin => true }
has_one :owner, :class_name => 'User', :through => :owner_permission, :source => :user
validate :owner, :presence => true
validates_associated :owner
end
在 Account 的实例上调用 save 不会验证所有者的存在。不过,如果我使用validates_presence_of,它会的。
【问题讨论】:
标签: ruby-on-rails-3