Rails 3.0 obsolète f.error_messages
et exige maintenant un plugin pour fonctionner correctement - je toutefois vous voulez apprendre comment afficher les messages d'erreur de la (nouvelle) natif moyen. Je suis le guide de mise en route, qui utilise la méthode dépréciée lors de la mise en œuvre du formulaire de commentaires. Par exemple:
<h2>Add a comment:</h2>
<%= form_for([@post, @post.comments.build]) do |f| %>
<%= f.error_messages %>
<div class="field">
<% f.label :commenter %><br />
<%= f.text_field :commenter %>
</div>
<div class="field">
<%= f.label :body %><br />
<%= f.text_area :body %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
Ici est la bonne façon de le faire (comme généré par l'échafaudage):
<%= form_for(@post) do |f| %>
<% if @post.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@post.errors.count, "error") %> prohibited this post from being saved:</h2>
<ul>
<% @post.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
. . .
Je comprends que l'utilisation de l' @post
variable dans le dernier exemple, mais ce que variable dois-je faire référence à l'ancienne pour obtenir les messages d'erreur pour le commentaire de la création?