I have this in my form view:
<%= error_messages_for 'post' %>
I'm not using form_for, just a regular form_tag: <% form_tag :action => 'save_requirement' do %>
The error messages do not pop up, any suggestions?
Thanks!
I have this in my form view:
<%= error_messages_for 'post' %>
I'm not using form_for, just a regular form_tag: <% form_tag :action => 'save_requirement' do %>
The error messages do not pop up, any suggestions?
Thanks!
I have this in my form view:
<%= error_messages_for 'post' %>
I'm not using form_for, just a regular form_tag: <% form_tag :action => 'save_requirement' do %>
The error messages do not pop up, any suggestions?
is @post an instance of an activerecord object with some errors?
Fred
is @post an instance of an activerecord object with some errors?
Fred
Yes,
controller:
def new_requirement @post = Post.new end
def save_requirement @post = Post.new(params[:post])
if @post.save redirect_to_index("Thank you for your post!") else redirect_to :action => :new_requirement end end
Hi --
is @post an instance of an activerecord object with some errors?
Fred
Yes,
controller:
def new_requirement @post = Post.new end
def save_requirement @post = Post.new(params[:post])
if @post.save redirect_to_index("Thank you for your post!") else redirect_to :action => :new_requirement end end
In the failure case, you don't want to redirect; you want to render. Redirecting triggers a completely new request cycle, with a new controller instance, and all instance variables are reset to nil. So @post will be back to being a new Post instance, which will not have any errors, so no errors will be displayed.
If you render, on the other hand, you'll just be rendering the new_requirement template with the existing @post object, which does have errors.
David
Ah! Great David!
Thanks so much, it works!