无法使用devise_for添加`users / sessions`路由

时间:2015-10-03 19:01:18

标签: ruby-on-rails devise routes

我有这样的路线:

  devise_for :admins, path: 'admin', controllers: {sessions: 'admin/sessions'}
  devise_for :users, controllers: { omniauth_callbacks: 'users/omniauth_callbacks' }
  devise_scope :user do
    get 'sign_out', to: 'devise/sessions#destroy', as: :destroy_user_session
  end

因此可以使用omniauth注册用户,但我想启用通过电子邮件和密码注册。所以我添加了这样的用户会话:

  devise_for :users, controllers: { sessions: 'users/sessions', omniauth_callbacks: 'users/omniauth_callbacks' }

但路线保持不变。

       new_admin_session GET      /admin/sign_in(.:format)                    admin/sessions#new
           admin_session POST     /admin/sign_in(.:format)                    admin/sessions#create
   destroy_admin_session DELETE   /admin/sign_out(.:format)                   admin/sessions#destroy
 user_omniauth_authorize GET|POST /users/auth/:provider(.:format)             users/omniauth_callbacks#passthru {:provider=>/facebook/}
  user_omniauth_callback GET|POST /users/auth/:action/callback(.:format)      users/omniauth_callbacks#:action
    destroy_user_session GET      /sign_out(.:format)                         devise/sessions#destroy

即使devise_for :users, controllers: { sessions: 'users/sessions'}制作路线user_omniauth_authorizeuser_omniauth_callback

如果我删除了行devise_for :users,路线也会消失。

我做错了什么?我很感激任何建议。

0 个答案:

没有答案
相关问题