虾PDF和动作邮件器不附加PDF



我正在使用虾PDF和ActionMailer在签名表格完成时发送PDF,但它只是发送文本而不是连接PDF。不太确定我缺少什么,但是会有任何帮助。

示例

--
Content-Type: application/pdf;
charset=UTF-8
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename=file.pdf
JVBERi0xLjQKJf////8KMSAwIG9iago8PCAvQ3JlYXRvciA8ZmVmZjAwNTAw
MDcyMDA2MTAwNzcwMDZlPgovUHJvZHVjZXIgPGZlZmYwMDUwMDA3MjAwNjEw...

大虾pdf

# encoding: utf-8
class FormPdf < Prawn::Document
  def initialize(form)
    super()
    @form = form
    all
  end
  def all
    text "Form text here"
    end
  end

控制器

def create
    @form = Form(params[:form])
    respond_to do |format|
      if @form.save
        FormMailer.send_form(@form).deliver
      else
      end
    end
  end

Mailer

class FormMailer < ActionMailer::Base
  default from: "noreply@random.com"
  def send_form(form)
    @g form = form
    pdf = FormPdf.new(@ form)
    attachments["file.pdf"] = { mime_type: 'application/pdf', content: pdf.render() }
    mail to: @form.email, subject: "Form"
  end
end

我已经解决了这个问题。意识到我没有视图模板。

相关内容

  • 没有找到相关文章

最新更新