如何在 Ruby 中将图像从帖子附加到电子邮件

时间:2021-07-27 06:56:52

标签: ruby image email post

我是 Ruby on Rails 的新手。我有一个使用 Ruby 版本 2.6.5 的项目。这个项目有一个使用 imagemagick 的图片帖子。当我创建一个新帖子时,目前我可以将帖子发送到我的电子邮件,但没有帖子的图片。

如何处理带有图片帖子的附加电子邮件?

我做了什么:-

class NotifierMailer < ApplicationMailer
  default from: ENV['ADMIN_MAIL']
  layout 'mailer'

  def new_post(post)
    @post = post
    mail(to: @post.email,
    bcc: ENV['ADMIN_MAIL'],
    subject: " New Post.")
  end

end

1 个答案:

答案 0 :(得分:0)

因此,是否使用 ImageMagick 无关紧要。解决这个问题的方法是 做这样的事情:

def new_post(post, file_path)
    @post = post
    # You can add multiple attachments in a loop, just ensure the file names are uniq
    attachments[File.basename(file_path)] = File.read(file_path)
    mail(to: @post.email,
    bcc: ENV['ADMIN_MAIL'],
    subject: " New Post.")
end

这里的关键是文件需要在本地可用,应该是这样,因为这是一个新帖子。如果不是,您需要先将文件下载到临时文件,否则您将没有本地文件路径可供读取。

相关问题