我正在尝试设置Mandrill API来发送交易电子邮件。首先,我只想向刚刚成功注册的新用户发送欢迎电子邮件。一旦我完成了,我应该能够找出任何其他额外的电子邮件。我已经编了几个代码,但说实话,我并不完全确定我做得对!代码在测试期间当前不起作用,这实在令人讨厌。
下面包含所有代码,欢迎所有输入:)
我安装了以下两个宝石。
我不确定在哪里放置以下代码,gem的文档在config / initializers https://github.com/renz45/mandrill_mailer中说mail.rb(在'Usage'下查看)
ActionMailer::Base.smtp_settings = {
:address => "smtp.mandrillapp.com",
:port => 587,
:user_name => ENV['MANDRILL_USERNAME'],
:password => ENV['MANDRILL_API_KEY'],
:domain => 'heroku.com'
}
ActionMailer::Base.delivery_method = :smtp
MandrillMailer.configure do |config|
config.api_key = ENV['MANDRILL_API_KEY']
end
我不会使用Action Mailer所以我想我只会改变
ActionMailer::Base.smtp_settings
到
MandrillMailer::TemplateMailer.smtp_settings
???
我在app / mailers下有一个transactional_mailer.rb文件
class TransactionalMailer < MandrillMailer::TemplateMailer
default from: 'hello@randomemail.com'
def welcome(user)
mandrill_mail template: 'welcome_template',
subject: "hello",
to: {email: user.email, name: user.name},
vars: {
'USER_IDENTIFIER' => user.email,
'LIST_COMPANY' => 'Your Company'
},
important: true,
inline_css: true,
async: true
end
end
应用程序当前在注册控制器中调用该方法
MandrillMailer.welcome(resource).deliver
应该是
TransactionalMailer.welcome(@user).deliver
???
在本地服务器(rails s)上进行测试期间无法正常工作我不熟悉编码并尝试解决原因。
感谢所有帮助!
谢谢:)