Rails路由将resource_id添加到url

时间:2015-01-16 13:32:04

标签: ruby-on-rails ruby ruby-on-rails-4 routing

嗨我有一个rails应用程序,我在其中使用不同的命名空间,如user,admin等。

我的网址在用户名称空间下

'/user/:controller_name' but i want to 

一样使用它
'/library/:library_id/user/:controller_name'

用户与库具有一对一的关系。我可以获得当前用户库ID。

当我尝试在路径中使用路径参数(如

namespace :user, path: "library/user" do 
  ...
end

它正在工作,但我无法获得身份。

是否可以这样做?

3 个答案:

答案 0 :(得分:0)

这不起作用?

namespace :user, path: "library/:library_id/user" do 
  ...
end

答案 1 :(得分:0)

我想,这就是你要找的东西

  resources :libraries do
    namespace :users do
      resources :resource_name
    end
  end


# Output for me
/libraries/:library_id/users/controller_name/new(.:format)
/libraries/:library_id/users/controller_name/:id/edit(.:format)
. 
.

答案 2 :(得分:0)

这应该适合你:

resources :libraries do
  member do
    resources :user do
      collection do
        resources :controller_name
      end
    end 
  end 
end