DEPRECATION警告:f.error_messages已从Rails中删除,现在可作为插件使用。请使用rails plugin install git://
...
对于像这样的错误消息使用插件似乎有点极端。我没有使用正确的标准名称吗?
代码(HAML)是:
- simple_form_for(@link) do |f|
= f.error_messages
答案 0 :(得分:1)
您的代码中没有拼写错误,f.error_messages实际上已被弃用。有关stackoverflow的讨论:f.error_messages in Rails 3.0。
答案 1 :(得分:1)
感谢Michal。我会给你一个upvote。 我发现以下是升级的快速替代品:
-if @link.errors.any?
%div#error_explanation
%h2
=pluralize(@link.errors.count, "error")+' '
prohibited this link from being saved:
%ul
-@link.errors.full_messages.each do |msg|
%li
=msg
答案 2 :(得分:1)
您可以安装dynamic_form
gem,它支持Rails 3模型的一些助手。其中一个助手是error_messages。所以下面的代码,用于处理Rails 2.3.x应用程序,仍然可以在没有弃用警告的情况下在Rails 3上运行。
<% form_for @video, :html=>{:multipart=>true} do |f| %>
<%= f.error_messages %>
...more view code...
<% end %>