Rails: 方法和密码更新表格

Rails: Form for method and password update

关于 rails.

的小问题

我遵循了 Michael Hartl 的教程。在第 9 章中,他展示了更新用户的对象。

步骤 9.1:https://www.railstutorial.org/book/updating_and_deleting_users#sec-updating_users

我想知道如何在不将密码和密码确认输入表单的情况下更新名称。

当我试图实现这个并省略密码的文本输入并且不允许在控制器中输入时,应用程序总是抛出密码太短的错误(它可能是空的)。但我没有发布密码?还是我。

我只想让密码保持不变,例如只更改名称。

希望你能理解我,知道如何实现。

谢谢

检查模型中的验证器。目前不允许在保存模型时不设置密码

选项 A:允许空白条目

validates :password, length: { minimum: 6 }, allow_blank: true

选项 B:在某些地方跳过 pw 验证

attr_accessor :changing_password
validates :password, length: { minimum: 6 } if: :changing_password

u = User.new(params[:user])
u.changing_password = true
u.save

选项 C(干净的 OO 方式):实现表单对象 3. Extract Form Objects