Question

how can I generate a RoR route like this one:

Prefix: gateway

verb: post

URI Pattern: /region/:id/gateway

Controller#Action: region#gateway

I tried with

resources :region, :only => :show do
    post :gateway, :only => :show
end

but is generating by default a route to show the regions

/region/:id(.:format)

I want to skip the regions show action and only keep it the /region/:id/gateway route

Was it helpful?

Solution

post "gateway/region/:id/gateway" => "region#gateway"

OTHER TIPS

Have a look to Rails routing documentation. It's well documented.

If You want to use resources, You may write:

resources :region do
 member do
    post :gateway
 end
end

It will be recognized as:

region/:id/gateway

You can't use "only" because it reduce to one action!

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top