Problema con error_messages_for

Ho un problema. Non viene visualizzato il rapporto degli errori riguardo
alla presenza dei due campi autore e testo.
Codice:

class Comment < ActiveRecord::Base
belongs_to :post

validates_presence_of :autore, :testo

end

codice appartenente al controller ‘home_controller’

def save_comment
if request.post?
@comment = Comment.new(params[:comment])
if @comment.save
flash[:notice] = “Commento inserito con successo”
redirect_to("/home/show_comment/" +
params[:comment][:post_id])
else
redirect_to("/home/add_comment/" + params[:comment][:post_id])
end
end
end

pagina add_comment.html.erb

Blog &amp News

<%= error_messages_for 'comment' %> <% for post in @posts %>

Titolo: <%= post.titolo %> data: <%= post.data %>

Testo:
<%= post.testo %>

<%= link_to 'Commenti(n)', :action => 'show_comment', :id => post %> <%= link_to 'Aggiungi un commento', :action => 'add_comment', :id => post %>
<% for comment in @comments %> <% if comment.post_id == post.id %>

<%= comment.testo %>

<% end %> <% end %> <% if comment.post_id == post.id %> <% form_for :comment, :url => {:action => :save_comment} do |form| %>

Nome:
<%= form.text_field :autore%>

Testo:
<%= form.text_area :testo %>

<%= form.hidden_field :post_id, :value => post.id %> <%= submit_tag "Invia commento" , :class => "submit" %> <% end %> <% end %>
  </div> <!-- post -->
  <% end %>

So che è un po’ lungo ma dov’è l’errore? Come si può vedere il form
chiama il metodo save_comment, ma se lascio i campi vuoti non mi
notifica nulla, carica semplicemente la pagina add_comment…

Emanuele B. wrote:

    if @comment.save
      flash[:notice] = "Commento inserito con successo"
      redirect_to("/home/show_comment/" +

params[:comment][:post_id])
else
redirect_to("/home/add_comment/" + params[:comment][:post_id])
end

So che è un po’ lungo ma dov’è l’errore?

è il redirect. se fai un redirect perdi la variabile d’istanza @comment
e quindi l’array errors associatoci. sostituisci con render :partial =>
‘add_comment’ e sei a posto.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs