Я запускаю новое приложение Rails 3 с нуля.
И когда я проходил базовую настройку (настройку гемов, сессий и т. Д.), Я столкнулся с чем-то, что мучило меня некоторое время.
Наша текущая система (смесь скриптов Ruby и приложения Rails 2) отправляет клиентам различные уведомления по электронной почте / факсу. Есть определенные вещи, которые распространены в 80% случаев - cc - определенные учетные записи электронной почты с нашей стороны и подпись электронной почты.
Ранее я только что определил GLOBALS в environment.rb, например,
SYSTEM_EMAIL_SIGNATURE
или
SYSTEM_EMAIL_NOTIFY
и использовал их позже в почтовых программах или, если это был автономный скрипт, у меня был файл setup.rb, в котором было много общих настроек, в том числе пользовательские настройки электронной почты, подобные этой.
Поскольку я перестраиваю это приложение с нуля и объединяю все скрипты в одно приложение ruby - я пытался придумать лучший способ сделать это.
Сейчас я настраиваю инициализатор email.rb с настройками action_mailer, который я расширил, добавив еще несколько элементов:
########## Setup Global Email Defaults ##############
Site::Application.configure do
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => 'mail.example.com',
:port => 25,
:domain => 'example.com',
# These are custom to OUR setup - used later in the code
:default_from => 'it.systems@example.com',
:default_notify => ["it.manager@example.com"],
:default_signature => "
---------------------------
This is an automatic email.
If you have any questions please contact customer service
at 1 (800) 888-0000 or go to http://www.example.com.
Thank you for your business!"
}
end
Так это хороший подход? Или есть ли лучший способ, чем эти два подхода?