关于铁轨的小问题。
我遵循了Michael Hartl的教程。在第9章中,他展示了更新用户的人。
步骤9.1:https://www.railstutorial.org/book/updating_and_deleting_users#sec-updating_users
我想知道如何更新名称,而无需在表单中输入密码和密码。
当我尝试实现此操作并省略密码的文本输入并且不允许它们在控制器中时,应用程序总是抛出密码短的错误(它可能是空的)。但是我没有发布密码?或者是我。
我只想让密码保持不变,只需更改名称即可。
我希望你能理解我并知道如何实现这一点。
由于
答案 0 :(得分:0)
在模型中检出验证器。目前,它不允许在保存模型时没有设置密码
选项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