wkhtmltopdf Фалис для 1000+ страниц ruby ​​на рельсах - PullRequest
0 голосов
/ 29 августа 2018

Создание pdf из 1000+ страниц завершается неудачно в случае предоставления заголовка. layout / header - это файл header.pdf.haml. После просмотра различных предложений увеличилось ограничение на количество открытых файлов в Ubuntu.

respond_to do |format|
  format.html
  format.xlsx
  format.pdf { render pdf: "Test report", dispoistion: :attachment,
      :show_as_html => (params[:d].present? && params[:d] == "true"),
      layout: "pdf.html.haml",
      margin: {
        top: 38
      },
      header: {
        spacing: 2,
        html: {
          template: 'layouts/header',
          formats:  [:pdf],
          handlers: [:haml],
          layout: nil,
          locals: {
            title: "Test Report"
          }
        }
    }
  }
end

RuntimeError (Не удалось выполнить: ["/shared/bundle/ruby/2.2.0/bin/wkhtmltopdf", "-q", "--page-size", «Буква», «--margin-top», «38», «--header-spacing», «2», "--Header-HTML", "Файл: ////tmp/wicked_header_pdf20180828-94225-2oante.html", "--footer-left", "Test Online", "--footer-right", "Page [page] of [topage] "," file: ////tmp/wicked_pdf20180828-94225-f0g5x0.html ", "/tmp/wicked_pdf_generated_file20180828-94225-80q49r.pdf"] Ошибка: PDF не может быть сгенерировано! PaintDevice: невозможно уничтожить устройство рисования, которое красится):

Добавлено, может кто-нибудь предложить способ, как сделать так, чтобы заголовок указывал на локальный путь. Как предлагается в https://github.com/wkhtmltopdf/wkhtmltopdf/issues/2093#issuecomment-167955213

...