Ruby on rails Rails 3.2:使用Desive将根目录更改为嵌套用户资源索引时遇到问题
因此,我为一个用户类设计了一个设置,每个用户Ruby on rails Rails 3.2:使用Desive将根目录更改为嵌套用户资源索引时遇到问题,ruby-on-rails,ruby-on-rails-3,devise,Ruby On Rails,Ruby On Rails 3,Devise,因此,我为一个用户类设计了一个设置,每个用户都有很多: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/item
都有很多: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
会给我一个路由错误:未初始化的常量用户
我试着把它改成
authenticated :user do
root :to => 'items#index'
end
这就得到了错误没有路由匹配{:action=>“new”,:controller=>“items”}
我似乎在任何地方都找不到解决这个问题的办法。有人知道我做错了什么吗?谢谢 因此,正确的路线是后者:
authenticated :user do
root :to => 'items#index'
end
我所犯的错误实际上是从我的角度来看的。我必须从视图中删除新的用户项路径链接。在此之后,我将了解如何链接到新项目 我必须将用户传递到路径<代码>新用户\项目\路径(当前用户)