我的模型/user.rb 中有以下内容:
validates :company, presence: true
validates :title, presence: true
我有一个辅助视图,我想在其中创建一个用户,但不要求该用户输入公司和职位。在不修改主 user.rb 的情况下我将如何做到这一点?
这适用于 Rails 3.2
我的模型/user.rb 中有以下内容:
validates :company, presence: true
validates :title, presence: true
我有一个辅助视图,我想在其中创建一个用户,但不要求该用户输入公司和职位。在不修改主 user.rb 的情况下我将如何做到这一点?
这适用于 Rails 3.2
您可以通过以@BroiSatse 回答的方式声明自定义验证,或者在保存用户时可以validate: false
作为参数传递,这样做
@user.save(:validate => false)
我通常会这样做:
class User < AR::Base
validates :company, :title, presence: true, if: :validate_company_and_title?
def validate_company_and_title?
@validate_company_and_title.nil? || @validate_company_and_title
end
def skip_company_and_title_validation!
@validate_company_and_title = false
end
end
然后在您的控制器中为给定视图创建操作,您可以执行以下操作:
@user.skip_company_and_title_validation!