我有这样的路线:
namespace :admin do
resources :users, :only => :index do
resources :skills, :only => :index
end
end
resources :skills
在这种情况下,我得到了:
admin_user_skills GET /admin/users/:user_id/skills(.:format)
{:action=>"index", :controller=>"admin/skills"}
如何更改嵌套路由以指向SkillsController而不是Admin :: SkillsController?我想要这个:
admin_user_skills GET /admin/users/:user_id/skills(.:format)
{:action=>"index", :controller=>"skills"}
有趣的事情 - 如果我们没有Admin :: SkillsController,它将自动使用SkillsController,但仅限于开发。
答案 0 :(得分:1)
在路由中使用namespace
意味着要为“命名空间”控制器设置特殊目录,在您的情况下为admin。但如果您使用scope
代替您拥有所需内容:
scope '/admin' do
resources :users, :only => :index do
resources :skills, :only => :index
end
end