2010-09-21 2 views
14

Есть ли способ отправить электронные письма в rails 3 в локальный файл или так, вместо использования SMTP-сервера? Я хотел бы протестировать содержимое электронной почты без использования SMTP-файлов, в идеале только в среде DEV.Rails Mailer: отправка электронной почты в локальный файл

Лучше всего было бы локальный SMTP или что-то, что позволило мне проверять электронную почту, проверять адреса электронной почты и т.д.

ответ

37

Вы можете использовать: тест-система доставки

ActionMailer::Base.delivery_method = :test 

Есть также: файл delivery_method

ActionMailer::Base.delivery_method = :file 

Вы можете определить, где поставить все письмо с file_settings

ActionMailer::Base.file_settings = { :location => Rails.root.join('tmp/mail') } 
+0

Спасибо, это именно то, что я хочу. –

+1

Примечание: похоже, это доступно только в Rails 3. (So Rails 2.3 людям не повезло) – RyanWilcox

+1

Любая идея о том, как открыть эти файлы и посмотреть, отформатированы ли они правильно? – moger777

4

Существует также драгоценный камень letter_opener, который сохранит почту на диск и откроет ее в браузере.

Или mails_viewer, который имеет веб-интерфейс, чтобы просматривать электронные письма, а не открывать их в браузере.

Смежные вопросы