Как исправить ошибку: PDF не может быть создан - PullRequest
0 голосов
/ 27 июня 2019

Я настраиваю wicked-pdf для своего проекта, и я не могу заставить его работать, даже смотря на документацию, старые вопросы.

Проект ruby ​​2.6.2, rails 6.0.0.rc1, wicked_pdf 1.4, wkhtmltopdf-binary 0.12.3 и докер.Это мои коды из controller.rb

report = WickedPdf.new.pdf_from_string('some html here')

wicked_pdf.rb

WickedPdf.config = {
exe_path: Gem.bin_path('wkhtmltopdf-binary', 'wkhtmltopdf')}

1 Ответ

0 голосов
/ 27 июня 2019

Я не использую точно такие же версии вещей, которыми вы являетесь ...

Этот метод не является оптимальным и затруднит отслеживание проблем. Я предлагаю попробовать другой подход:

respond_to do |f|
  f.pdf do
    pdf = render_to_string :pdf => "checklist",:encoding => "UTF-8", :layout => 'pdf.html.haml', :template => '/checklists/show.haml'
    send_data(pdf,
              :filename =>  "checklist.pdf",
              :disposition => 'attachment',
              :type => "application/pdf")  
  end
end

Он работает хорошо и позволяет вам сделать ваши шаблоны PDF в виде файла, облегчая жизнь.

Попробуйте добавить код формата в свое действие шоу или новое действие, которое вы создаете для него. Это позволит Rails выдавать вам более точные ошибки хотя бы потому, что вы также можете сначала просмотреть HTML-код в своем браузере, чтобы убедиться, что код не содержит ошибок.

...