图像未从 Rails 应用加载到电子邮件中

Ahk*_*avi 6 ruby-on-rails actionmailer

有一些图像存储在我的 rails assets/images 文件夹中。我需要在从我的 rails 应用程序发送的电子邮件中显示这些图像。我可以发送电子邮件,但图像显示为断开的链接。

我的 development.rb 文件如下所示:

config.action_mailer.asset_host = 'http://localhost:3000'

config.action_controller.asset_host = 'http://localhost:3000'
Run Code Online (Sandbox Code Playgroud)

我的邮件视图如下所示:

<div class = "container">
  <%= image_tag(asset_path('com_name.jpg')) %>
</div>

<div class = "container">
    <%= image_tag(asset_path('banner.png')) %>
</div>

<h4>Hi! This mail is to inform you that your request has been successfully processed and the processed output has been attached along with your mail for your perusal</h4>

<h4>Looking forward to serve you once again.</h4>

<h5>Thanks,</h5>
<h4>Team Introhive</h4>
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?在原始电子邮件源中,我看到图像标签也引用了正确的指纹文件,但它似乎仍然出现损坏。请问有什么帮助吗?

Sha*_*das 5

请尝试以下方法,在邮件方法中,

例如。

class NotifierMailer < ApplicationMailer
  def welcome(recipient)
    attachments.inline['photo.png'] = File.read('path/to/photo.png')
    mail(to: recipient, subject: "Here is what we look like")
  end
end
Run Code Online (Sandbox Code Playgroud)

在您看来,请使用以下内容,

<%= image_tag attachments['photo.png'].url -%>
Run Code Online (Sandbox Code Playgroud)

如果您想要传递任何选项,您可以使用它,

<%= image_tag attachments['photo.png'].url, alt: 'Our Photo', class: 'photo' -%>
Run Code Online (Sandbox Code Playgroud)

请查看有关内嵌图像的文档http://api.rubyonrails.org/classes/ActionMailer/Base.html