【发布时间】:2018-06-14 21:52:10
【问题描述】:
太棒了:rails 现在提供了一种使用继承自
的类来预览邮件视图的方法 ActionMailer::Preview
Rails 似乎正在使用这个控制器来设置所有这些魔法:
Rails::MailersController#preview
不幸的是,我的应用是多租户的,我的邮件依赖于传递给他们的 request.host,以便根据触发它们的域来设置样式。
我希望能够在设置 may 邮件预览时关闭地址栏中的 url。我必须做一些奇怪的事情才能使它正常工作(部分原因是我也在为这些创建功能规范),但主要是因为我必须在无法访问请求对象的上下文中设置我的邮件,即使虽然我的邮寄者需要它才能正常工作。
class SiteMailerPreview < ActionMailer::Preview
def support_email_notification
support_email = SupportEmail.first
SiteMailer.support_email_notification(support_email, request).deliver
end
private
def request
request = Struct.new(:host).new
request.host = 'local.myhost.net'
request
end
end
目前主机是静态设置的,因此我无法真正针对多个主机测试邮件程序。
【问题讨论】:
标签: ruby-on-rails actionmailer preview