考虑photo
- 类的资源路由,例如。
如果我这样做routes.rb
,我会得到以下路线:
resources :photos
# GET '/photos/', :to => 'photos#index'
# GET '/photos/:photo_id/, :to => 'photos#show'
# and so on and so on
现在我想要的是用简单/photos
替换所有路线中的单词/p
,这样我就可以获得第一张照片的/p/1
短网址。有没有办法简单地改变resource
- 行,还是我必须手动添加每条路线?
答案 0 :(得分:1)
这将通过:photos
到p
resources :p, :controller => "photos"
答案 1 :(得分:1)
为了更简洁并避免p_id
的问题,您可以这样做:
resources :photos, path: 'p'
这样,您可以从最终的可读性中受益(它将生成edit_photo_path
等帮助程序,如果是嵌套路由等,您将访问变量photo_id
并生成命名URL你真的想要。