だから私は管理セクションを持つアプリを持っています。管理セクションには、インデックス メソッドとビュー インデックスを備えたチャレンジ コントローラーがあります。
管理フォルダーとは別のチャレンジコントローラーもあります。このコントローラーには CRUD 全体があります。
すべての課題はサブジェクトに属します。admin セクションのコントローラー サブジェクトには、index メソッドとビューがあります。管理セクションにないコントローラ サブジェクトには、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