3

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

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

任何指导表示赞赏。

4

2 回答 2

2

使用 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 插件时) - 如果是这种情况,我强烈建议您改用这种方法

于 2010-07-27T07:34:10.840 回答
0

我遇到了同样的问题,我设法通过从模型生成 pdf 来做到这一点,这比评估模板要容易得多。我在这里回答了答案:

将 Prawn PDF 保存为回形针附件?

于 2013-12-02T17:35:23.327 回答