【问题标题】:"Error: PDF could not be generated!" with WickedPDF“错误:无法生成 PDF!”与 WickedPDF
【发布时间】:2013-02-13 10:56:48
【问题描述】:

错误:

RuntimeError in BillsController#printing

Failed to execute:
"/usr/local/bin/wkhtmltopdf" -q        "file:////var/folders/j5/2wx0qdjj7kl7vbvq3m2z4rj00000gn/T/wicked_pdf20130213-41259-x9dcb5.html" "/var/folders/j5/2wx0qdjj7kl7vbvq3m2z4rj00000gn/T/wicked_pdf_generated_file20130213-41259-mg4iqp.pdf" 
Error: PDF could not be generated!

BillsController:

  # GET /bills
  # GET /bills.json
  def print
    respond_to do |format|
      format.html 
      format.pdf do
        render :pdf => "rechnung_id",
               :layout => "printing.pdf",
               :show_as_html => params[:debug]
      end
    end
  end

作为视图,我创建了一个 printing.html.erb 和一个 printing.pdf.erb - 并尝试了两者。

我已将 wkhtmltopdf 安装为二进制文件和 gem。当我尝试使用 gem 时(注释掉该行:

WickedPdf.config = { :exe_path => '/usr/local/bin/wkhtmltopdf'}

好像有什么东西崩溃了,什么也没发生。。 当我使用二进制文件时,我得到顶部显示的错误。 我的宝石版本是: wicked_pdf (0.9.4) 和 wkhtmltopdf-binary (0.9.9.1)。

我正在寻求帮助 - 这就是我已经尝试过的:

  1. “捆绑更新”和“捆绑安装”
  2. 在 9.9 版中安装了 wkhtmltopdf
  3. 添加了“Mime::Type.register "application/pdf", :pdf"

编辑: 如果我使用终端并输入“wkhtmltopdf www.myHomepage.info myhomepage.pdf”它工作正常。 “which wkhtmltopdf”给了我路径“/usr/bin/wkhtmltopdf”,但如果我想用一个,它正在打开“wkhtmltopdf_darwin_386”并且网站冻结..

【问题讨论】:

    标签: ruby-on-rails wicked-pdf


    【解决方案1】:

    现在我解决了这个问题。

    我将控制器方法更改为:

     def printing
        @bills = Bill.find(params[:id])
    
        respond_to do |format|
          format.html
          format.pdf do
            render :pdf => "bill_#{@bills.id}",
                   :wkhtmltopdf => '/usr/bin/wkhtmltopdf',
                   :template => '/bills/printing.pdf.erb',
                   :disposition => "inline"
                   #:save_to_file => Rails.root.join('pdf', "rechnung_#{@bills.id}.pdf")
          end
        end
      end
    

    我不得不在 application.rb 中删除 WickedPDF 作为中间件:

    require 'wicked_pdf'
    config.middleware.use WickedPdf::Middleware, {}
    

    现在它按预期工作了。

    【讨论】:

      猜你喜欢
      • 2015-01-18
      • 2012-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 2022-07-06
      • 1970-01-01
      相关资源
      最近更新 更多