0

ルートに問題があり、混乱しています。基本的に、私はユーザー Has_many ワーカーを持っており、ワーカーはユーザー アクティブ レコード設定に属しています。だから、ネストされたルートをやりたかったのです。以下は私のルートファイルです

resources :users do
 resources :workers
end 
resources :sessions, only: [:new, :create, :destroy]
root to: 'info_pages#home'
match '/contact', to: 'info_pages#contact'
match '/about', to: 'info_pages#about'
match '/signup', to: 'users#new'
match '/signin', to: 'sessions#new'
match '/signout', to: 'sessions#destroy', via: :delete 
match '/pools', to: 'pools#new'
match '/settings', to: 'info_pages#settings'

rake ルートを実行すると、ネストされたすべてのルートが表示されます

私は自分のワーカーコントローラーに行き、このコードを持っています

class WorkersController < ApplicationController
 def new
 end

 def show
 end

 def update
 end

 def create
 end

end

今、このリンクでページを読み込もうとすると

<li><%= link_to "Workers", new_user_worker_path %></li>

「ルートが一致しません {:action="new", :controller="workers"}」と言ってロードが失敗します

ルートファイルで明確に定義されているのに、このルートで失敗する理由がわかりません。ネストされたルートに対してコントローラーが正しく設定されていない可能性があります。ありがとうございました!

4

2 に答える 2

3

user変数が不足していると思います

<li><%= link_to "Workers", new_user_worker_path(@user) %></li>

またはデバイスの場合は、おそらく必要になります

<li><%= link_to "Workers", new_user_worker_path(current_user) %></li>
于 2013-06-12T18:33:29.520 に答える