【问题标题】:Ruby on Rails gmail does not display email imagesRuby on Rails gmail 不显示电子邮件图像
【发布时间】:2015-10-12 08:21:55
【问题描述】:

当我的 rails 应用程序将带有图像的电子邮件发送到 gmail 地址时 - gmail 不显示该图像 一开始我的 html 电子邮件代码中有图像标签:

 <img alt="" src="http://my_image/url/email_logo.svg" style="width: 200px; height: 40%;" />

但是,当我在浏览器中查看时,gmail 不显示此图像,但如果我使用电子邮件客户端(AirMail)查看相同的电子邮件,则会显示图像 我将此图像更改为内联附件:

电子邮件视图:

<td valign="bottom"><%= image_tag  attachments['email_logo.svg'].url , alt: '', style: "width: 200px; height: 40%;" -%></td>

my_mailer.rb

def send_my_email(email)
    @email = email
    attachments.inline['email_logo.svg'] = File.read(Rails.root.join("app/assets/images/", "email_logo.svg"))
    mail(to: @email, subject: 'My Email')
  end

如何让gmail显示这个图片?

【问题讨论】:

  • 你能检查一下send_my_email.html.erb是否正在被渲染吗?
  • Rails 从 send_my_email.html.erb 执行代码时出现此错误
  • 请显示日志..
  • 刚刚加了log,找这个文件send_report_email.html.erb in thelog
  • 从您的日志中,似乎没有创建附件。我的第一个猜测是这可能是媒体错误。尝试这样做:File.read(Rails.root.join("app/assets/images/", "email_logo.svg"), mime_type: 'image/svg+xml')

标签: html css ruby-on-rails gmail


【解决方案1】:

我在另一篇关于 SO 的帖子中读到 Gmail 直接不支持 SVG。您需要切换到 png 或 jpg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    • 2012-11-24
    • 2014-09-02
    • 2017-10-26
    • 1970-01-01
    相关资源
    最近更新 更多