是否可以在给定的控制器和操作上运行 ActiveRecord 验证。
例如我有user_controller
and signup_controller
我只需要在signup_controller#create 操作上运行需要密码的验证
您可以使用运行验证if
有条件:
validates :email, presence: true, if: :validate_email?
现在您需要定义此实例方法(在您的模型中):
def validate_email?
validate_email == 'true' || validate_email == true
end
This validate_email
attribute 可以是模型中的虚拟属性:
attr_accessor :validate_email
现在,您可以根据该虚拟属性执行电子邮件验证。例如,在signup_controller#create
你可以这样做:
def create
...
@user.validate_email = true
@user.save
...
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)