我构建了仅api应用程序,但由于我使用的是第三方电子邮件服务,因此我需要能够将电子邮件模板渲染为字符串以通过它到邮件服务包装的宝石。到目前为止,任何将模板呈现为字符串的尝试都会返回一个空字符串,我怀疑这是因为应用程序配置为仅API。我该如何添加对渲染模板到字符串的支持?添加支持将渲染视图渲染到仅适用于rails api的应用程序
如果不是这样,请让我知道。我使用邮戳服务。 postmark-rails
宝石,它集成到标准导轨邮寄根本没有工作,普通postmark
宝石(它使用邮戳API,而不是邮戳SMTP服务器)工作正常,但现在我的问题是生成适当的电子邮件的HTML。
这就是我想:
html = render_to_string(
partial: "transfer_mailer/transfer.html.erb",
locals: {
:@body => @body,
:@campaign => @campaign,
:@chat => @chat
}
)
但它返回空字符串。
我的设置涉及Rails 5.0.1
,ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
,Sidekiq 4.2.7
,并且在使用nginx/1.10.2
和Phusion Passenger 5.1.1
生产IM。生产环境部署在一个天蓝色的虚拟机中,并且我添加了入站和出站规则,以允许通过端口25,465,2525和587的流量。
任何帮助将非常感激。
对不起,但事实并非如此,尤其是因为我有两个模板:一个在'html.erb'中完成,另一个在'text.erb'中完成。当涉及邮件模板时,这是正常的。现在,我的解决方法是在控制器中包含'ActionView :: Helpers :: AssetTagHelper',将文件加载到'File'实例中,读取并将它传递给'ERB',如[本答案](http:///stackoverflow.com/a/14351129/667599)。无论如何,感谢您的帮助:)。 – Throoze