Shp*_*ord 3 url routes ruby-on-rails-3
我目前有以下路线设置photos:
resources :photos
match 'photos/:user' => 'photos#user', :as => :user_photo
match 'photos/:user/:key' => 'photos#show', :as => :show_photo
Run Code Online (Sandbox Code Playgroud)
这两条match路线给我这样的网址:
http://example.com/photos/joe_schmoe
http://example.com/photos/joe_schmoe/123xyz
Run Code Online (Sandbox Code Playgroud)
...类似于Flickr格式化其URL的方式.
但是,我遇到的问题是photos/:user路由被解释为show方法,或者如果我将那些自定义路由放在当前路由之前,resources比如/newget解释为user方法.
如何在不必大量定制路线的情况下解决这个问题?
你会希望把这个定义路由之上的resources :users,所以它在路线第一个匹配.
match 'photos/:user' => 'photos#user', :as => :user_photo
resources :photos
Run Code Online (Sandbox Code Playgroud)
此外,您可以show完全禁用该操作:
resources :photos, :except => :show
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2469 次 |
| 最近记录: |