On Sep 9, 2009, at 7:06 PM, MaggotChild wrote:
> > Can't find the answer to this. My old message received no responses > (subject was messed up). > > Is it possible to create routes that have the same URL yet map to a > different action based on the HTTP method (or pseudo method) like a > Rails' resource? > > For example: > > map.resources :foo, :collection => { :purge => :get, :purge_them > => :post } > > I'd like to use /foo/purge for both actions, and have the appropriate > controller method called based on the HTTP request's method -like /foo > does for the create and index methods, amongst others. map.connect('/foo/purge', :controller => 'foo', :action => 'purge' , :conditions => { :method => :get }) map.connect('/foo/purge', :controller => 'foo', :action => 'purge_them', :conditions => { :method => :post}) map.resources :foo I put parentheses in so the wrapping doesn't kill the syntax. Since there is an implied precedence based on appearance, if the map.resources(:foo) comes first, GET /foo/purge, looks like you want to show the Foo with id='purge'. (I'm not sure, but a POST /foo/purge might do the FooController#purge_them in either case). I hope that helps. -Rob Rob Biedenharn http://agileconsultingllc.com r...@agileconsultingllc.com --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk@googlegroups.com To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---