Rails路由更改URL与资源

时间:2014-09-25 16:41:23

标签: ruby-on-rails routes

我的路线中有以下内容:

resources :collection_pages, :only => [:show, :index]

现在它转到wwww.mysite.com/collection_pages索引

collection_pages/:id for show

我需要转到/collection而不是索引

/collection/:id for show

我试过了path: :collections,但它并不像我一样。

使用资源实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

除了SO answer @ Tamer.Shlash说明,您还可以在路线文件中使用自定义匹配器:

match '/collection', to: 'collection_pages#index', as: 'collection_index'
match '/collection/:id', to: 'collection_pages#show', as: 'collection_show'

添加as:' xxxx'通过匹配,您可以在视图中使用友好路径和网址助手:

redirect_to collection_index_path