我已经为用户显示页面提供了匹配/username
的路由。但是,当我添加其他操作时,例如:关注者并按照以下方式执行操作:
resources :users, :only => [:show] do
get :following, :followers
end
我获取了网址/users/username/following
而不是/username/following
。
如何将所有/users/username
网址匹配为/username/etc
..?
这是我的/username
路线:
match '/:id' => 'users#show', :constraints => { :id => /[a-zA-Z0-9\-_]*/ }, :as => "user_profile"
谢谢。
修改
我已经通过添加
解决了这个问题match '/:id/following' => 'users#show/following', :as => "user_following"
match '/:id/followed' => 'users#show/following', :as => "user_followers"
但我不确定这是否是最佳解决方案。我真正想要的是一个默认路线,它将所有/:id/:action
与省略/users
的相应操作相匹配。
答案 0 :(得分:0)
我已经通过添加
解决了这个问题match '/:id/following' => 'users#show/following', :as => "user_following"
match '/:id/followed' => 'users#show/following', :as => "user_followers"
但我不确定这是否是最佳解决方案。我真正想要的是一个默认路由,它将所有/:id /:action与省略/ users的相应操作相匹配。
答案 1 :(得分:0)
靠近底部
match ':id/:action', :controller => :users