我正在尝试验证用户的密码create
和update
(自定义身份验证,没有宝石)。应该始终需要密码create
,但只有在update
他们输入内容时才需要密码。
模型/用户.rb
has_secure_password
validates :password, presence: {if: :requires_password?}, length: {minimum: 6}
validates :password_confirmation, presence: {if: :requires_password?}
private
def requires_password?
new_record? || !password.nil?
end
这按预期工作,但是在创建新用户时,错误消息“密码不能为空”显示两次。
是否有一个简单的解决方案,或者我是否以错误的方式接近密码验证?