Я хочу отправить по электронной почте инструкции по сбросу пароля пользователя с помощью devise gem. Для этого я заменяю passwords_controller
class PasswordsController < Devise::PasswordsController
respond_to :json
def create
account = ::Account.find_by(email: password_reset_params[:email])
account&.send_reset_password_instructions
head 200
end
private
def password_reset_params
params.require(:account).permit(:email)
end
end
с представлением - app/views/accounts/mailer/reset_password_instructions.html.erb
<p>Hello <%= @resource.email %>!</p>
<p>This is a password reset request, click on the link below:</p>
<p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>
Но вместо указанного выше электронного письма я получил стандартное сообщение:
Hello test@test.com!
Someone has requested a link to change your password. You can do this through the link below.
Change my password
If you didn't request this, please ignore this email.
Your password won't change until you access the link above and create a new one.
Что-то еще поменять? в initializers/devise
у меня config.mailer = 'Devise::Mailer'
изменены маршруты:
devise_for :accounts, singular: 'account', path: '', controllers: {
passwords: 'api/v1/account/passwords',
}