Ruby 1.8.7, Rails 3.0.4, PDFKit 0.5.0
Я пытаюсь создать PDF с PDFKit без использования промежуточного программного обеспечения, поэтому я могу отключить JavaScript (там есть аккордеонное действие, котороескрывает много информации, которая должна быть в PDF).Однако всякий раз, когда я пытаюсь это сделать, он терпит неудачу, потому что говорит, что в моем представлении отсутствуют детали (show.html.erb):
Отсутствуют частичные программы / детали с {: locale => [: en,: en],: format => [: pdf],: handlers => [: erb,: rjs,: builder,: rhtml,: rxml]}
Если удалить ссылки начастично, работает нормально.Я также попытался поместить частичные файлы в тот же каталог с show.html.erb, но безрезультатно.Вот код в действии show моего контроллера:
respond_to do |format|
format.html # show.html.erb
format.pdf {
html = render_to_string(:template => "show.html.erb")
kit = PDFKit.new(html, :disable_javascript => true )
send_data(kit.to_pdf, :filename => "test_pdf", :type => "application/pdf", :disposition => 'attachment')
}
end
Есть ли способ сделать это и сохранить частичные значения?
РЕДАКТИРОВАТЬ: сейчас я сделал это:
# config/initializers/pdfkit.rb
PDFKit.configure do |config|
config.default_options = {
:page_size => 'Legal',
:print_media_type => true,
:disable_javascript => true
}
end
Недостатком этого является отключение javascript для каждого сгенерированного мной PDF-файла, но пока это подойдет.Любые ответы на исходный вопрос о том, как заставить работать партиалы с render_to_string, по-прежнему приветствуются.