设置与铁路邮件捕手的mandril

时间:2015-09-23 11:15:16

标签: ruby-on-rails mailcatcher

我正在使用带有动作邮件的mandril。 在我的mandril配置

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

在development.rb

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = { :address => "localhost", :port => 1025 }

我正在运行邮件捕获程序并访问http://localhost:1080/但它不起作用, 我需要添加更多配置吗?

1 个答案:

答案 0 :(得分:0)

我在开发模式下使用默认的smpt_settings和mailcatcher。所以我没有指定

 config.action_mailer.smtp_settings = ..

但我必须使用

在前台启动mailcatcher
mailcatcher -f

让它起作用(它有点像deamon一样的bug)。这样做的好处是,您可以看到它是否收到邮件请求。