【发布时间】:2010-04-01 10:01:15
【问题描述】:
我的 user.rb 中有这个:
attr_accessor :old_password
def validate
unless password.nil?
errors.add_to_base("Old password entered incorrect") unless self.valid_password? old_password
end
end
我将 old_password 作为一个虚拟属性,在更新为新密码之前必须验证它是否与当前密码匹配。我的问题是,在正确输入后(密码 == 密码确认和 self.valid_password?old_password )会产生错误并将我传回表单。奇怪的是,数据实际上会在数据库中更新,并且不会输入错误;尽管它会产生相同的错误(“输入的旧密码不正确”)。我到底做错了什么?
【问题讨论】:
-
你能格式化你的代码吗?
-
新..这里不知道如何,但谢谢史蒂夫。
标签: ruby-on-rails ruby validation activerecord