2014-04-14 39 views
1

在我的应用程序,我有以下途径:覆盖Rails的路由

namespace :partners do 
    resources :cars 
    end 

我的车指标如下路线:

'localhost:3000/partners/cars/'

但我想有这样的路径:

'localhost:3000/partners/all_cars/'

我该怎么办?帽子?

回答

5

尝试:

namespace :partners do 
    resources :cars, path: 'all_cars', only: [ :index ] 
    resources :cars, except: [ :index ] 
end 

第一行会创建/partners/all_cars/映射,要index行动。另请注意,我们仅为index操作生成指定all_cars路径的路由。

下一行,由于我们已经有了index的路由,我想我们将跳过定义index,并让其他默认值。

+1

易于理解正在发生的事情与此解决方案的路线。 – wurde

1
namespace :partners do 
    resources :cars, except: [:index] do 
     collection do 
     get :all_cars 
     end 
    end 
end 

通过这一点,你会删除索引,并添加all_cars