Я лично рекомендую letter_opener от Райана Бейтса, однако, если вы действительно хотите доставить почту, а не просто просматривать ее в браузере, есть ряд доступных плагинов, которые другие уже перечислены. Никто, однако, не упомянул, что вы можете очень легко сделать это, используя Interceptors
.
Создайте новый инициализатор в вашем каталоге config/initializers
в вашем приложении Rails:
# config/initializers/development_mail_interceptor.rb
class DevelopmentMailInterceptor
def self.delivering_email(message)
message.subject = "[#{message.to}] #{message.subject}"
message.to = "YOUR_EMAIL@gmail.com"
end
end
ActionMailer::Base.register_interceptor(DevelopmentMailInterceptor) if Rails.env.development?
Это использует мощь перехватчика в вашем приложении. Он ничего не настраивает, а скорее изменяет конверт сообщения, изменяя поля to
и subject
. Замените YOUR_EMAIL на правильное значение.
Метод self.delivering_email(message)
вызывается ActionMailer
. Вы подключаетесь к этому методу и переопределяете конверт сообщения.
Наконец, вы регистрируете этот перехватчик, если мы в данный момент находимся в среде разработки.
Обязательно перезапустите сервер, и вся ваша почта (в разработке) будет фактически отправлена на вашу электронную почту.