3

我知道您可以在 Rails 3 中将图像作为附件添加到电子邮件中

def email_image(email)
  attachments["img"] = File.read('/path to image')
  mail(:to => email)
end

但是有没有办法从 url 附加图像而不是本地保存的图像?我想附上一张用回形针保存在 S3 上的图像。有没有简单的方法可以做到这一点,还是我需要先下载图像?

4

2 回答 2

9

你需要

require 'open-uri'

然后做

attachments["filename"] = open(url-to-image).read
于 2012-12-09T21:27:48.287 回答
0

如果您使用的是 html,那么您只需插入一个图像标签。唯一的问题是大多数电子邮件客户端会阻止图像,直到用户“信任”你。

如果您希望图像更有可能被显示,那么最好的办法是下载并嵌入它。但是,这会增加下载图像然后将其发送到每个邮件客户端的开销。

于 2012-04-12T09:47:22.010 回答