1

在我的一个邮件程序中,我有这种方法可以发送附有 pdf 的电子邮件:

def send_offer(customer, ip)
    @customer = customer
    attachments['offer.pdf'] = {
      :encoding => 'base64',
      :content  => Base64.encode64(File.read(Rails.root.join('app', 'assets', 'images', 'offer.pdf')))
    }
    mail(:to => "mail@example.com",
         :from => "mail@example.com",
         :body =>"this tag is important when do any attachment",
         :subject => "#{@customer[:name]} Offer")
end

电子邮件已发送,但当我打开它时,附件的 PDF 已损坏。文件大小为670 bytes.

原始PDF是263 KB (269.485 byte)

这个怎么可能?

4

1 回答 1

2

我遇到了同样的问题,这里的解决方案帮助我解决了这个问题:

attachments[file_name] = File.open(file_location, 'rb'){|f| f.read}
于 2014-08-04T05:20:23.853 回答