Hi,
In my project, all delete links aren’t working. They keep acting as
“show” action.
Here is an example for the announcements controller.
In routes.rb :
map.resources :announcements
In my index view, I have the standard
<%= link_to ‘Destroy’, announcement, :confirm => ‘Are you
sure?’, :method => :delete %>
But when ever I click on the link, controller gets a “get” message,
not a “delete”.
Processing AnnouncementsController#show (for 127.0.0.1 at 2009-03-02
14:01:23) [GET]
Session ID: 95ccbfa93eef0bf8408147c7b6b9a287
Parameters: {“action”=>“show”, “id”=>“2”,
“controller”=>“announcements”, “locale”=>“en”}
In order to get the delete working I had to create a new named route.
map.annoucements_delete “announcements/:id/
delete”, :controller=>“announcements”, :action => “destroy”
<%= link_to ‘delete’, annoucements_delete_path(announcement), :confirm
=> ‘Are you sure?’, :method => :delete %>
It works, but it is ugly.
What did I do wrong ?
Thanks
Jean-Loup