したがって、 User クラスと各 user のDeviseセットアップがありますhas_many :items
。サインインしているユーザーのルートをアイテムのインデックス ページに変更しようとしています。
これが私のroutes.rbファイルです:
RequestApp::Application.routes.draw do
devise_for :users
resources :users do
resources :items
end
authenticated :user do
root :to => 'users/:user_id/items#index'
end
devise_scope :user do
root :to => 'devise/sessions#new'
end
そして rake routes を実行すると、次のようになります。
new_user_session GET /users/sign_in(.:format) devise/sessions#new
user_session POST /users/sign_in(.:format) devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
user_password POST /users/password(.:format) devise/passwords#create
new_user_password GET /users/password/new(.:format) devise/passwords#new
edit_user_password GET /users/password/edit(.:format) devise/passwords#edit
PUT /users/password(.:format) devise/passwords#update
cancel_user_registration GET /users/cancel(.:format) registrations#cancel
user_registration POST /users(.:format) registrations#create
new_user_registration GET /users/sign_up(.:format) registrations#new
edit_user_registration GET /users/edit(.:format) registrations#edit
PUT /users(.:format) registrations#update
DELETE /users(.:format) registrations#destroy
user_items GET /users/:user_id/items(.:format) items#index
POST /users/:user_id/items(.:format) items#create
new_user_item GET /users/:user_id/items/new(.:format) items#new
edit_user_item GET /users/:user_id/items/:id/edit(.:format) items#edit
user_item GET /users/:user_id/items/:id(.:format) items#show
PUT /users/:user_id/items/:id(.:format) items#update
DELETE /users/:user_id/items/:id(.:format) items#destroy
users GET /users(.:format) users#index
POST /users(.:format) users#create
new_user GET /users/new(.:format) users#new
edit_user GET /users/:id/edit(.:format) users#edit
user GET /users/:id(.:format) users#show
PUT /users/:id(.:format) users#update
DELETE /users/:id(.:format) users#destroy
root / users/:user_id/items#index
root / devise/sessions#new
そして、ログインしてに行くとlocalhost:3000
、ルーティングエラーが発生します:uninitialized constant Users
に変更してみました
authenticated :user do
root :to => 'items#index'
end
そして、それは私にエラーを取得しますNo route matches {:action=>"new", :controller=>"items"}
これに対する解決策がどこにも見つからないようです。私が間違っていることを誰かが知っていますか?ありがとう!