0

Railsが初めてで、Rails 3でdeviseを使用してルーティングを理解するのに苦労しています

ユーザーページにルーティングすると、この醜いエラーが発生します: http://s9.postimage.org/nlyxhlk5b/Devise_routing.png

私のルートで私が持っている

#Resources for users

devise_for :users, :controllers => { :registrations => "registrations" }

resource :users do
  get 'welcome'
end

これらは私のユーザールートです

更新しました

                       root        /                                               members#welcome
           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)                         devise/registrations#cancel
          user_registration POST   /users(.:format)                                devise/registrations#create
      new_user_registration GET    /users/sign_up(.:format)                        devise/registrations#new
     edit_user_registration GET    /users/edit(.:format)                           devise/registrations#edit
                            PUT    /users(.:format)                                devise/registrations#update
                            DELETE /users(.:format)                                devise/registrations#destroy

2 つのユーザー リソースを持たない方がよいでしょうか。何らかの形で競合している可能性があると思いますか、それとも何か不足しているだけですか?

アップデート

デフォルトのデバイス登録コントローラーをオーバーライドしていることを忘れていました

 class RegistrationsController < Devise::RegistrationsController
  protected

  # Redirect to welcome page after a successful registration
  def after_sign_up_path_for(resource)
    '/users/welcome'
  end
 end
4

1 に答える 1

1

ユーザーコントローラーを削除する登録コントローラーを削除する

削除する

resource :users do
get 'welcome'
end

これをルートに追加します

# Directing the user after login
 authenticated :user do
root :to => 'recipes#index'

終わり

変化する

devise_for :users, :controllers => { :registrations => "registrations" }

devise_for :users

それがどうなるか教えてください

于 2012-11-23T20:04:49.747 に答える