我想实现一个 RailsUser
模型,它有一个名为password
. 我想做到这一点,以便当我打电话时......
user_instance.password = 'cleartext'
该方法在将明文设置在实例上之前对其进行哈希处理,如下所示:
Digest::SHA1.hexdigest(cleartext)
我试过使用回调,但问题是每次保存用户时都会对 pw 进行哈希处理,即使 pw 没有更新也是如此。所以它被一遍又一遍地散列和重新散列。
我尝试重新定义password=
方法...
alias password= old_password=
def password=(cleartext)
old_password=(Digest::SHA1.hexdigest(cleartext))
end
但得到一个错误说不password=
存在。