Мне нужно, чтобы мое приложение Rails перенаправляло на домашнюю страницу после того, как я отправлю электронное письмо с инструкциями по сбросу пароля. Devise по умолчанию отображает форму входа после ввода адреса электронной почты.
Я пытаюсь переопределить Devise :: PasswordsController
и изменить его redirect_to
, но безуспешно. На самом деле, я не думаю, что Rails даже принимает мой класс. Это могло быть очень глупой ошибкой, но я полдня безуспешно занимался этим.
Я взял идею переопределить контроллер паролей из здесь .
Вот мой контроллер:
class PasswordsController < Devise::PasswordsController
protected
def after_sending_reset_password_instructions_path_for(resource_name)
root_url
end
end
Routes.rb:
devise_for :users, :controllers => {:passwords => "passwords"}
devise_for :users, :controllers => {:registrations => "registrations"}
devise_for :users, :controllers => {:sessions => "sessions"}
Я хотел бы упомянуть, что я переопределил контроллеры регистрации и сеанса Devise в том же приложении, и они, похоже, работают нормально.