在Michael Hartl 的教程的第 7 章中,有一个用户模型 < code here >,它的密码属性定义为 attr_accessor 和 attr_accessible,并带有一个存在验证器。
问题是:如果我检索现有用户并尝试更新其电子邮件,ruby 会抛出一个要求其密码的异常,并且每次我想更新任何其他属性时都被迫重新设置密码。例子:
User.first.update_attributes!(:email => "example@mail.com")
ActiveRecord::RecordInvalid: Validation failed: Password can't be blank, Password is too short (minimum is 6 characters)
我在密码的存在验证器旁边添加了“:on =>:create”,它似乎解决了这个问题。这是关于登录系统的正确解决方案吗?
任何完成过 Michael Harlt 教程的人都知道这是一个错误还是他的真实意图?