所以我有一个有管理部分的应用程序。管理部分有一个带有索引方法和视图索引的挑战控制器。
我还有一个与管理文件夹分开的挑战控制器。该控制器具有整个 CRUD。
每个挑战都属于一个主题。管理部分的控制器主题有一个索引方法和视图。不在管理部分的控制器主题拥有整个 CRUD。
现在,在主题(不是管理部分)的视图中,我可以执行以下操作:
<%= link_to "New Challenge".html_safe, new_subject_challenge_path(@subject) %>
我想在管理部分做同样的事情,但我真的不知道该怎么做。复制代码会给我一个错误:
No route matches {:action=>"new", :controller=>"challenges", :subject_id=>nil} missing required keys: [:subject_id]
但我希望我可以在没有额外路线的情况下做到这一点......
看起来应该很容易,但我真的不知道如何处理。任何帮助将不胜感激......我希望我能很好地解释自己。
管理路由与命名空间一起使用:
namespace :admin do
resources :paths, only: [:index, :new, :create, :update, :edit]
resources :users, only: [:index, :new, :create, :show, :edit, :update]
结尾
resources :challenges, except: [:index, :destroy] do
resources :solutions, only: [:create]
end
resources :subjects