Rails:添加自定义验证方法,仅在更新时验证用户模型的密码

时间:2013-10-06 13:10:18

标签: ruby-on-rails validation passwords

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

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

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

0 个答案:

没有答案