我有一个电子商务应用程序。我正在使用Prawn生成订单的pdf发票。我正在使用标准的Prawn设置。在视图/管理员/订单中,我有一个名为show.pdf.prawn的文件。卖方在其“管理”部分中查看订单时,他单击一个链接以打开订单/显示视图的pdf版本。所有这一切都完美。

现在,棘手的部分。订单完成后,我会向卖家发送电子邮件。我想做的是将订单/显示的pdf发票版本附加到该电子邮件。是否有可能做到这一点?电子邮件附件的文档非常有限,我无法找到正在描述的工作流中的资源。

任何指导表示赞赏。

最佳答案

使用ActionMailer发送带有电子邮件的附件非常容易:

class InvoiceMailer < ActionMailer::Base

  def email_with_attachment(pdf_invoice)
    .
    .
    .

    attachment "application/pdf" do |a|
      a.filename = "some_invoice.pdf"
      a.body = pdf_invoice
    end
  end

end


您可能会遇到的一个问题是在prawnto方法之外生成pdf文件(使用prawnto插件时)-
如果是这种情况,我强烈建议您改用this approach

07-24 19:17
查看更多