加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails 4,Mailer预览,预览附加图像

发布时间:2020-12-16 21:33:20 所属栏目:百科 来源:网络整理
导读:我有rails 4.1.6邮件程序预览的问题. 我希望在预览模式下看到附加的图像,但它不起作用.我认为这是不正确的 有我的代码: 邮件文件 class AppMailer ActionMailer::Base default from: "robot@mysite.com" # AppMailer.test_mail.deliver def test_mail attac
我有rails 4.1.6邮件程序预览的问题.

我希望在预览模式下看到附加的图像,但它不起作用.我认为这是不正确的

有我的代码:

邮件文件

class AppMailer < ActionMailer::Base
  default from: "robot@mysite.com"

  # AppMailer.test_mail.deliver
  def test_mail
    attachments.inline['rails.png'] = File.read(Rails.root.join('app','assets','images','rails.png'))

    mail(
      to: 'my-email@gmail.com',subject: "test letter",template_path: "mailers",template_name: "test"
    )
  end
end

预览文件

class MailerPreview < ActionMailer::Preview
  def app_mailer
    AppMailer.test_mail
  end
end

模板文件

%p Hello,World!
%p= image_tag attachments['rails.png'].url

当我去

/rails/mailers/mailer/app_mailer

我看到预览页面,但图像不起作用.结果是html代码

<p>Hello,World!</p>
<p><img src="cid:544d1354a8aa0_fda8082dbf8258ca@admins-air.mail"></p>

所以.我想,我应该找到一种方法来获取路径/到/文件而不是预览模式下的CID

(当我把信寄到我的邮箱时 – 信看起来不错)

我在预览模式下做错了什么?

解决方法

对于Rails> = 4.2来预览图像,您应该创建初始化程序:
# config/initializer/preview_interceptors.rb
ActionMailer::Base.register_preview_interceptor(ActionMailer::InlinePreviewInterceptor)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读