Разработать всевозможную ошибку пользовательского контроллера - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть пользовательский контроллер для omniauth_callbacks

class People::OmniauthCallbacksController < 
    Devise::OmniauthCallbacksController
 def setup
   ...
 end

 def facebook
   ...
 end

 def google-oauth2
   ...
 end

 def failure
  ...
 end
end

И в маршрутах:

...
devise_for :people, only: :omniauth_callbacks, controllers: { omniauth_callbacks: 'people/omniauth_callbacks' }
devise_scope :person do
  get '/people/auth/:provider/setup' => 'people/omniauth_callbacks#setup' #needed for devise setup phase hook to work
end
...

И когда у меня не получается авторизация через omniauth, у меня есть: Processing by Devise::OmniauthCallbacksController#failure Но я хочу обработатьPeople::OmniauthCallbacksController.Как мне это настроить?

devise (4.5.0) omniauth (1.8.1) rails (4.2.5.2)

1 Ответ

0 голосов
/ 16 декабря 2018

Я думаю, что проблема в вашем devise_scope, вы должны использовать:

devise_scope :people do
  get '/people/auth/:provider/setup' => 'people/omniauth_callbacks#setup' #needed for devise setup phase hook to work
end
...