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

我所犯的错误实际上是从我的角度来看的。我必须从视图中删除新的用户项路径链接。在此之后,我将了解如何链接到新项目

我必须将用户传递到路径<代码>新用户\项目\路径(当前用户)