Hi Raul,

Thanks very much for getting back to me. I took your previously advise
on the book that you recommended "Ruby For Rails" by David A Black
which is really helpful. I would also like recommend "Aglie Web
Development with Rails"  by Dave Thomas this book is also great if you
are new to rails.

Well Raul I tried the following in my view,

      <% 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?',
                                     :method => :delete)%>

and I thought would also try

<%= link_to('Destroy', {:action => 'destroy', id => @album.id},  ***I
also changed the id to a symbol being :id***
                                     :confirm => 'Are you sure?'),
                                     :method => :delete %>    Rails
didn't seem to like the parenthesis around :confirm => 'Are you
sure?'#

I have also copied in my routes.rb file

ActionController::Routing::Routes.draw do |map|
  map.resources :albums

  # The priority is based upon order of creation: first created ->
highest priority.

  # Sample of regular route:
  #   map.connect 'products/:id', :controller => 'catalog', :action =>
'view'
  # Keep in mind you can assign values other than :controller
and :action

  # Sample of named route:
  #   map.purchase 'products/:id/purchase', :controller =>
'catalog', :action => 'purchase'
  # This route can be invoked with purchase_url(:id => product.id)

  # Sample resource route (maps HTTP verbs to controller actions
automatically):
  #   map.resources :products

  # Sample resource route with options:
  #   map.resources :products, :member => { :short => :get, :toggle
=> :post }, :collection => { :sold => :get }

  # Sample resource route with sub-resources:
  #   map.resources :products, :has_many =>
[ :comments, :sales ], :has_one => :seller

  # Sample resource route with more complex sub-resources
  #   map.resources :products do |products|
  #     products.resources :comments
  #     products.resources :sales, :collection => { :recent => :get }
  #   end

  # Sample resource route within a namespace:
  #   map.namespace :admin do |admin|
  #     # Directs /admin/products/* to Admin::ProductsController (app/
controllers/admin/products_controller.rb)
  #     admin.resources :products
  #   end

  # You can have the root of your site routed with map.root -- just
remember to delete public/index.html.
   map.root :controller => "albums"

  # See how all your routes lay out with "rake routes"

  # Install the default routes as the lowest priority.
  map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'
end


Does the error I'm receiving have anything to do with map.connect
':controller/:action/:id' being as lowest priority?

Thanks

Keith


On Oct 19, 8:21 pm, "raul parolari" <[EMAIL PROTECTED]> wrote:
> Keith,
>
>   the closing parenthesis (that I had not noticed) has of course to be moved
> at the end of the statement, so the line becomes:
>
> <%= link_to('Destroy', {:action => 'destroy', id => @album.id},
>                                      :confirm => 'Are you sure?',
>                                      :method => :delete) %>
>
> I would leave out the parenthesis, which are not needed here, and only add
> noise
>
> Raul
>
> On Sun, Oct 19, 2008 at 12:00 PM, raul parolari <[EMAIL PROTECTED]>wrote:
>
>
>
>
>
> > 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
> >>     [EMAIL PROTECTED] = Album.find(:all)
> >>      render(:action => 'album_list')
> >>     end
>
> >> def destroy
> >>       [EMAIL PROTECTED] = Album.find(params[:id])
> >>       [EMAIL PROTECTED]
> >>        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- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to