我有一个SettingsController,允许用户更改 密码。我期待Devise应用相同的验证规则 适用于其他地方的密码。 在我的设置控制器中,我有以下代码:
@user.password = new_pwd
@user.password_confirmation = new_cnf_pwd
if @user.save
format.html { redirect_to settings_home_url }
format.js
else
flash[:error] = "Settings cant be saved"
format.html { redirect_to settings_home_url }
format.js
end
在SettingsPage上,我有:
<%= flash[:error] %>
<%= flash[:warning] %>
<%= flash[:alert] %>
在表单中,现在我已设置的flash [:error] SettingsController显示正常。但我想也要展示 设计表单上的“密码不匹配”等默认错误。 另外,我想标记错误的字段。 有没有办法从像我这样的非设计控制器做到这一点 有? 谢谢... 维德。
答案 0 :(得分:1)
模型的任何验证错误都将在@user.errors
中提供,而不是flash
。
Rails Guides: Displaying Validation Errors in the View文档向您展示了如何在视图中打印出来。