On May 15, 11:53 pm, Neil Chaudhuri <[email protected]> wrote:
> In routes.rb I have this:
>
> resources :presentations do
>     post "save_stuff", :on => :member
> end
>
> In PresentationsController I have this:
>
> def save_stuff
>     ...
> end
>
> And in my form I have this:
>
> <%= form_for @presentation, :url => {:action => "save_stuff"}, :html =>
> {:id => "presentationForm", :method => :post} do |f| %>
>
> Yet when an attempt is made to render the above form I get this:
>
> !! Unexpected error while processing request: No route matches
> {:action=>"save_stuff", :controller=>"presentations"}
>
> I have been struggling with this for hours, so I could use some help.
>

You've said that save_stuff is a member thing, so rails needs to know
which presentation you want to save stuff on. The :url option
completely overrides the route that would normally be generated (to
the update action) so you need to specify the id as well. You could
also use the named route - :url =>
save_stuff_presentation_path(@presentation)

Fred

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to