Ruby on rails 在rails 3.0应用程序I';我在电子邮件中嵌入图像时遇到问题
我正在尝试在电子邮件中显示二维码图像。我曾尝试在SO应用类似问题的解决方案,但未能使任何变体发挥作用。我不想从网站上下载 在我的用户_mailer.rb中:Ruby on rails 在rails 3.0应用程序I';我在电子邮件中嵌入图像时遇到问题,ruby-on-rails,ruby-on-rails-3,image,email,Ruby On Rails,Ruby On Rails 3,Image,Email,我正在尝试在电子邮件中显示二维码图像。我曾尝试在SO应用类似问题的解决方案,但未能使任何变体发挥作用。我不想从网站上下载 在我的用户_mailer.rb中: def email_qrcode(from_whom, to_addy) @from_whom = from_whom @to_addy = to_addy attachments["qrcode.png"] = File.read(Rails.root + "public/images/qrcode.png")
def email_qrcode(from_whom, to_addy)
@from_whom = from_whom
@to_addy = to_addy
attachments["qrcode.png"] = File.read(Rails.root + "public/images/qrcode.png")
mail( :to => to_addy, :from => @from_whom.email, :subject => "QR Code" )
end
attachments.inline["qrcode"] = {
:data => File.read("#{Rails.root.to_s + '/public/images/qrcode.png'}"),
:mime_type => "image/png",
:encoding => "base64"
}
在我的电子邮件\u qrcode.html.erb中:
<body>
<p>Here is the QR Code:</p>
<p><img src="cid:qrcode.png"></p>
</body>
<%= image_tag( attachments['qrcode'].url, :id => 'qrcode' ) %>
它也包含在附件中,但必须双击它才能打开它,这会破坏便利性
谢谢你的帮助
更新: 好的市场营销就是要消除一切障碍,让潜在客户更容易接受。二维码显示的次数越多,而无需查找并单击其他链接,结果就会越好。所以,说清楚点
def email_qrcode(from_whom, to_addy)
@from_whom = from_whom
@to_addy = to_addy
attachments["qrcode.png"] = File.read(Rails.root + "public/images/qrcode.png")
mail( :to => to_addy, :from => @from_whom.email, :subject => "QR Code" )
end
attachments.inline["qrcode"] = {
:data => File.read("#{Rails.root.to_s + '/public/images/qrcode.png'}"),
:mime_type => "image/png",
:encoding => "base64"
}
电子邮件_qrcode.html.erb:
<body>
<p>Here is the QR Code:</p>
<p><img src="cid:qrcode.png"></p>
</body>
<%= image_tag( attachments['qrcode'].url, :id => 'qrcode' ) %>
“qrcode”)%%>
在您的电子邮件\u qrcode
方法中,尝试更改:
附件。[“qrcode.png”]
到
attachments.inline[“qrcode.png”]
这会让你朝着正确的方向前进 你确定你的电子邮件客户端没有阻止显示图像吗?如果您在电子邮件中有一个img标记,并且它作为附件包含在电子邮件中,那么它应该在那里。作为旁白,通常最好将图像放在可公开访问的地方,并通过完全限定的url
img src显示在您的电子邮件中="http://example.com/path/to/image.png
而不是作为附件,安迪。谢谢你的帮助+1因为你的评论会帮助一些人。我在更新中解释了我将二维码图像嵌入邮件正文的营销原则。是的,看到你的目标了。尝试将附件。[“qrcode.png”]
更改为附件.inline[“qrcode.png”]
在您的电子邮件\u qrcode
方法中。+1让我快到了。有几个额外的doo-dads是需要的,但我发现他们是因为搜索了你建议的代码。将添加我在另一个更新中发现的内容。如果你将其作为答案发布,我将选择你的解决方案。