我希望通过ActionMailer发送的电子邮件包含链接回我的应用程序的图像。在我的开发环境,例如:如何获取Rails异步邮件程序中图像的完整URL?
<img src="http://myfullappurl.dev/assets/myimage.png">
我有这个在我的development.rb
config.action_controller.asset_host = 'myfullappurl.dev'
config.action_mailer.asset_host = config.action_controller.asset_host
config.action_mailer.default_url_options = { host: 'myfullappurl.dev', only_path: false }
但我不能让我的邮件模板来呈现一个完整的URL中任何一种方式:
:asset_path('myimage.png')
asset_path('myimage.png', only_path: false)
image_url('myimage.png')
很多关于这一主题类似的问题被做这样的事情回答
但是因为我的邮件是与Sidekiq异步发送的,所以没有request
对象,就像它们在控制器中同步发送一样。
有没有一个明显的东西我失踪了,还是我必须与Rails做斗争?我使用的是Rails 4,但我相信任何在3.1/3.2中工作的应该都可以。
谢谢。这是让rails 4.1.1在HTML电子邮件中显示完整图像URL的解决方案。对SO的另一个低估的答案是 – 2014-06-23 22:28:19
。 也,我认为它更好地使用https在大多数情况下不是开发环境。 – 2015-04-19 11:58:16
将协议添加到'action_controller.asset_host'时,我没有遇到任何问题,不知道该行为是否已更改。修复本身就像描述的那样工作。 :) – lime 2015-06-30 11:29:14