Подтвердить что ты не робот

Переадресация после входа в систему с помощью Devise

Можно ли перенаправить пользователей на разные страницы (на основе роли) после входа в систему с помощью Devise? Кажется, это только перенаправляет на root: to = > ... страницу, определенную в routes.rb

Спасибо!

4b9b3361

Ответ 1

По умолчанию программа Devise выполняет маршрутизацию в root после ее действий. Существует хорошая статья об переопределении этих действий в Devise Wiki, https://github.com/plataformatec/devise/wiki/How-To:-Redirect-to-a-specific-page-on-successful-sign-in

Или вы можете пойти еще дальше, установив stored_locations_for(resource) в nil, а затем у вас есть разные переадресации для каждого действия, то есть: after_sign_up_path(resource), after_sign_in_path(resource) и т.д.

Ответ 2

просто вы можете добавить этот метод в свой прикладной контроллер

def after_sign_in_path_for(resource)
  user_path(current_user) #your path
end

Ответ 3

только вставьте приведенный ниже код в контроллер приложения или любой контроллер, вам нужно выполнить операцию;

def after_sign_in_path_for(resource)
    users_path
end