Настроить мандрил с почтовым ловушкой в рельсах
Я использую оправку с почтовой программой. На моем мандриле конфиг
ActionMailer::Base.smtp_settings = {
:port => '587',
:address => 'smtp.mandrillapp.com',
:user_name => ENV['MANDRILL_USERNAME'],
:password => ENV['MANDRILL_APIKEY'],
:domain => ENV['MANDRILL_DOMAIN'],
:authentication => :plain
}
ActionMailer::Base.delivery_method = :smtp
MandrillMailer.configure do |config|
config.api_key = ENV['MANDRILL_API_KEY']
end
Rails.application.config do |config|
config.mandrill_mailer.default_url_options = { host: ENV['DEFAULT_URL_HOST'] }
config.mandrill_mailer.default_url_options['protocol'] = ENV['DEFAULT_URL_PROTOCOL'] unless ENV['DEFAULT_URL_PROTOCOL'].blank?
end
На action_mailer.rb
Rails.application.configure do
config.action_mailer.default_url_options = { host: ENV['DEFAULT_URL_HOST'] }
config.action_mailer.default_url_options['protocol'] = ENV['DEFAULT_URL_PROTOCOL'] unless ENV['DEFAULT_URL_PROTOCOL'].blank?
end
На развитие.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = { :address => "localhost", :port => 1025 }
Я запустил сборщик писем и захожу на http://localhost:1080/, но он не работает. Нужно ли добавлять дополнительные конфигурации?
1 ответ
Я использую smpt_settings по умолчанию с mailcatcher в режиме разработки. поэтому я не указал
config.action_mailer.smtp_settings = ..
совсем.
Но я должен запустить mailcatcher на переднем плане с
mailcatcher -f
чтобы он работал (он как-то глючит, как Деймон). Это имеет то преимущество, что вы можете видеть, получает ли он почтовые запросы.