我正在使用rails4,我需要根据条件更改Action Mailer的电子邮件地址。但它仍然采用电子邮件地址的默认值。如何使这个工作?
class MailerController < ActionMailer::Base
before_filter :get_tenant
default from: "#{ENV['TENANT_EMAIL']}" if $tenant == 'mytenant'
def get_tenant
$tenant = 'mytenant'
end
end
我有mailerclass,它继承自MailerController ......
错误:发送邮件需要SMTP发件人地址。设置 消息smtp_envelope_from,return_path,sender或from address。
答案 0 :(得分:1)
我的建议,更改&#39;来自&#39;内部邮件方法。
def tenant?
is_it_my_tenant_logic
end
def from
tenant? ? MailerController.default[:from] : "hiro@metaverse.com"
end
def a_mailer_method
mail(:from => from, :to => "yt@realworld.com" , :subject => "I have logged in")
end