Rails 3.0 устарел f. error_messages
, и теперь для правильной работы требуется плагин - однако я хочу узнать, как отображать сообщения об ошибках (новым) собственным способом. Я следую руководству по началу работы , в котором используется устаревший метод при реализации формы комментариев. Например:
Add a comment:
<%= form_for([@post, @post.comments.build]) do |f| %>
<%= f.error_messages %>
<% f.label :commenter %>
<%= f.text_field :commenter %>
<%= f.label :body %>
<%= f.text_area :body %>
<%= f.submit %>
<% end %>
Вот правильный способ сделать это (сгенерированный каркасом):
<%= form_for(@post) do |f| %>
<% if @post.errors.any? %>
<%= pluralize(@post.errors.count, "error") %> prohibited this post from being saved:
<% @post.errors.full_messages.each do |msg| %>
- <%= msg %>
<% end %>
<% end %>
. . .
Я понимаю, что в последнем примере я использую переменную @post
, но какую переменную я использую ссылку в первом случае, чтобы получить сообщения об ошибках при создании комментариев?