How do I add a route to my Rails 3 app which allows me to have a URL that maps to an action in a RESTful resource that accepts multiple parameters:
/modelname/compare/1234,2938,40395
And then in my controller, I want to access these ids:
@modelname = Modelname.find(params[:modelname_ids])
So far, I have been trying match '/modelname/compare/:modelname_ids', :to => 'modelname#compare'
, but I keep getting No route matches "/modelname/compare/4df632fd35be357701000005,4df632fd35be357701000005"
. Any suggestions?
You can setup a route that matches anything, then split the parameter inside your controller:
resources :modelname do
match 'compare/*path' => 'controller#compare_action'
end
# controller:
def compare_action
@modelname = Modelname.find(params[:path].split(','))
end
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With