Keith
The problem may be that you are using a GET Http verb to 'destroy' a
resource (and Rails is not happy about it):
Try this: change the line:
<%= link_to('Destroy', {:action => 'destroy', id => @album.id},
:confirm => 'Are you sure?') %>
into
<%= link_to('Destroy', {:action => 'destroy', id => @album.id},
:confirm => 'Are you sure?'),
:method => :delete %>
See if this solve the problem; else, you should show your routes.rb file.
Raul
On Sun, Oct 19, 2008 at 11:20 AM, <[EMAIL PROTECTED]> wrote:
>
> Hi Everyone,
>
> I have just created a destroy action in my controller, it was working
> fine about 2 hours ago and now for some reason it has stopped working.
> Once I click on destroy I receive ' Unknown action No action
> responded to destroy'. The action that I want it to redirect to is
> 'list' and this action does work as I have another action that
> redirects to 'list' fine. Could anyone let me in to what I I have done
> wrong please...?
>
> def list
> @albums = Album.find(:all)
> render(:action => 'album_list')
> end
>
> def destroy
> @album = Album.find(params[:id])
> @album.destroy
> redirect_to(:action =>'list')
> end
>
> And in my view I have
>
> <% if @album != nil -%>
> ID: <%= @album.id %><br/>
> Title: <%= @album.title %> <br/>
> Artist: <%= @album.artist %><br/>
> Genre: <%= @album.genre %><br/>
> <% else -%>
> No record found.
>
> <% end -%>
> <%= link_to('Back', :action => 'alt_album_list') %> |
> <%= link_to('Edit', :action => 'edit', :id => @album.id ) %> |
> <%= link_to('Destroy', {:action => 'destroy', id =>
> @album.id}, :confirm => '
> Are you sure?') %>
>
> When I go into the logs I get the following error message
>
> Processing PublicController#destroy (for 127.0.0.1 at 2008-10-19
> 16:32:19) [GET]
> Session ID:
> BAh7ByIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNo
> SGFzaHsABjoKQHVzZWR7ADoMY3NyZl9pZCIlZmFlNWMzZDcxOWY5OTM0Yzhk
> ZDk0YTgwMDU4OWNkMDA=--5ecae299067ff9537732b80de514985b52f69fab
> Parameters: {"controller"=>"public", "action"=>"destroy",
> "id"=>"15"}
>
>
> ActionController::UnknownAction (No action responded to destroy):
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/filters.rb:580:in
> `call_filters'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/filters.rb:573:in
> `perform_action_with_filters'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in
> `perform_action_with_benchmark'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/1.8/benchmark.rb:
> 293:in `measure'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/benchmarking.rb:68:in
> `perform_action_with_benchmark'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/rescue.rb:201:in
> `perform_action_with_rescue'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/caching/sql_cache.rb:13:in
> `perform_action_with_caching'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> activerecord-2.1.0/lib/active_record/connection_adapters/abstract/
> query_cache.rb:33:in `cache'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> activerecord-2.1.0/lib/active_record/query_cache.rb:8:in `cache'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/caching/sql_cache.rb:12:in
> `perform_action_with_caching'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/base.rb:529:in `process'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/filters.rb:569:in
> `process_with_filters'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/session_management.rb:130:in
> `process_with_session_management_support'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/base.rb:389:in `process'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:149:in
> `handle_request'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:107:in `dispatch'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in
> `synchronize'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:104:in `dispatch'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:120:in
> `dispatch_cgi'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> actionpack-2.1.0/lib/action_controller/dispatcher.rb:35:in `dispatch'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> rails-2.1.0/lib/webrick_server.rb:112:in `handle_dispatch'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/gems/
> rails-2.1.0/lib/webrick_server.rb:78:in `service'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/1.8/webrick/
> httpserver.rb:104:in `service'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/1.8/webrick/
> httpserver.rb:65:in `run'
> C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/1.8/webrick/
> server.rb:173:in `start_thread'
> :1:in `start'
>
> Rendering C:/Users/Keith/.netbeans/6.1/jruby-1.1/lib/ruby/gems/1.8/
> gems/actionpack-2.1.0/lib/action_controller/templates/rescues/
> layout.erb (not_found)
>
>
> Has anyone came across this before? I have done research on the
> message and someone has the same problem and fixed it by going into
> the following
>
> This is a comment I found from another group
>
>
> I got this error (ActionController::UnknownAction - No action
> responded to ...), and I noticed it was because the link_to helper
> generated bad URL's (in the ":controller/:id/:action" format rather
> than ":controller/:action/:id").
>
> The fix was to change the order of statements in the config/routes.rb
> file; move my "map.resources" statements higher up in the file
> (=higher priority).
>
> Thanks everyone
>
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "ruby-on-rails-programming-with-passion" group.
To unsubscribe from this group, send email to
[EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/ruby-on-rails-programming-with-passion?hl=en?hl=en
-~----------~----~----~----~------~----~------~--~---