保存PDFKit中间件显示的PDF文件

时间:2011-03-01 11:45:05

标签: ruby-on-rails ruby pdfkit

如果有人有兴趣将PDF文件保存在PDFKit中间件gem所显示的文件系统中,那么它就是......

  1. 覆盖middleware.rb文件的call方法。
  2. 在覆盖中只需替换此行:

    body = PDFKit.new(translate_paths(body, env), @options).to_pdf
    

    pdf = PDFKit.new(translate_paths(body, env), @options)
    file = pdf.to_file('Your/file/name/path')
    Mymodel.my_method()     #You can write your method here to use that file
    body = pdf.to_pdf   #Here you can change the response body
    
  3. 如果您不想提供pdf响应,也可以覆盖response-body和content-type。如果您有任何进一步的询问,请继续。

    这个过程确实非常有用,因为当你在视图文件中使用大量的JavaScript时,render_to_string方法将无效,即它不会渲染繁重的JavaScript。

1 个答案:

答案 0 :(得分:2)

如果有人有兴趣将PDF文件保存在PDFKit中间件gem所显示的文件系统中,那么它就是......

  1. 覆盖middleware.rb文件的call方法。
  2. 在覆盖中只需替换此行:

    body = PDFKit.new(translate_paths(body, env), @options).to_pdf
    

    pdf = PDFKit.new(translate_paths(body, env), @options)
    file = pdf.to_file('Your/file/name/path')
    Mymodel.my_method()     #You can write your method here to use that file
    body = pdf.to_pdf   #Here you can change the response body
    
  3. 如果您不想提供pdf响应,也可以覆盖response-body和content-type。如果您有任何进一步的询问,请继续。

    这个过程确实非常有用,因为当你在视图文件中使用大量的JavaScript时,render_to_string方法将无效,即它不会渲染繁重的JavaScript。