0

我只需要在我的用户模型的操作 :update 上添加自定义验证。用户仅使用电子邮件创建,因此在他们更新密码时设置。我想在更新密码时添加验证。

validate :custom_validation, on: :update

#storing password
def password=(password_str)
  @password = password_str 
  self.password_salt   = BCrypt::Engine.generate_salt
  self.password_digest = BCrypt::Engine.hash_secret(password_str, password_salt)
end

def custom_validation

  if !(self.password.present? || self.password_confirmation.present?)
   errors.add(:password, 'password and password_confirmation can\'t be blank')
 end

if self.password.present? && self.password.length < 6
  errors.add(:password, 'password length should be greater than 6')
end

end 不验证我的用户密码.....

4

0 回答 0