bitte um Rat..
Ein Blog Eintrag soll kommentiert werden.
<%= link_to 'Kommentieren', { :action => 'new_comment', :id => blog }
im controller:
def new_comment
@comment = Comment.new
@blog = Blog.find(params[:id]) # Das steht hier damit ich den
Eintrag nochmal aufführen möchte und auch wegen der Zuordnungs id
end
def create_comment
@comment = Comment.new(params[:comment])
if @comment.save
flash[:notice] = 'Eintrag wurde gespeichert.'
redirect_to :controller => 'index'
else
render :action => 'new_comment'
end
end
im partial:
<%= hidden_field 'comment', 'blog_id', :value => @blog.id %>
Das klappt auch. Der Eintrag wird korrekt abgespeichert.
Allerdings, wenn ich jetzt die Formularfelder leer lasse und validiere
bekomme ich:
|You have a nil object when you didn't expect it! The error occurred
while evaluating nil.titel|
..
<p><%= simple_format(h @blog.text) %></p>
Denke das liegt daran, dass new_comment wieder aufgerufen wird und die
id für @blog dann nicht mehr zur Verfügung steht.
Wie am besten ändern ?
Oder gibt es eine andere Erklärung ?
Gruß Werner
--
Werner Laude
Lindenburger Allee 22 | 50931 Köln
0221.8805 635
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http://www.webagentur-laude.de
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug