【问题标题】:Wicked pdf, failed to load PDF document邪恶的pdf,无法加载PDF文档
【发布时间】:2021-10-14 12:58:38
【问题描述】:

我正在尝试实现 gem wicked_pdf 。在最初的困难(致命错误(重新输入异常))之后,我设法启动了服务器。我为测试设置了一个内容为“Hello world”的pdf,但每次我想打开它时,都会收到“加载PDF文档失败”的通知

控制器

def index
    respond_to do |format|
      format.html
      format.pdf do
        render pdf: "index.pdf.haml",
        layout: 'pdf.html.haml',
        page_size: 'A4',
        disposition: 'inline'
      end
    end
  end

index.pdf.haml

Hello world

config/initializers/wicked_pdf.rb

# WickedPDF Global Configuration
#
# Use this to set up shared configuration options for your entire application.
# Any of the configuration options shown here can also be applied to single
# models by passing arguments to the `render :pdf` call.
#
# To learn more, check out the README:
#
# https://github.com/mileszs/wicked_pdf/blob/master/README.md
class WickedPdf
  module PdfHelper
    remove_method(:render)
  end
end

WickedPdf.config = {
  # Path to the wkhtmltopdf executable: This usually isn't needed if using
  # one of the wkhtmltopdf-binary family of gems.
  # exe_path: '/usr/local/bin/wkhtmltopdf',
  #   or
  # exe_path: Gem.bin_path('wkhtmltopdf-binary', 'wkhtmltopdf')

  # Layout file to be used for all PDFs
  # (but can be overridden in `render :pdf` calls)
  # layout: 'pdf.haml',

  # Using wkhtmltopdf without an X server can be achieved by enabling the
  # 'use_xvfb' flag. This will wrap all wkhtmltopdf commands around the
  # 'xvfb-run' #command, in order to simulate an X server.
  # use_xvfb: true,
}

config/initializers/mime_types.rb

# frozen_string_literal: true
# Be sure to restart your server when you modify this file.

# Add new mime types for use in respond_to blocks:
# Mime::Type.register "text/richtext", :rtf
Mime::Type.register "application/pdf", :pdf

截图链接:https://drive.google.com/file/d/1ujt8ANq16SrmSHJk45APMXXxm1l5q5ic/view?usp=sharing

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-6 wicked-pdf


    【解决方案1】:

    好的,所以我将 wicked_pdf 降级到 1.4.0 版并删除了:

    class WickedPdf
      module PdfHelper
        remove_method(:render)
      end
    end
    

    来自 config/initializers/wicked_pdf.rb,现在它可以工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-24
      • 2013-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多