Есть ли способ для activ_as_flying_saucer, чтобы сохранить файл без вызова render_pdf? - PullRequest
0 голосов
/ 26 января 2012

Как видно из заголовка, я использую гем Rails, который работает хорошо, но я хочу отдельно сохранить PDF в папку.Есть ли способ сделать это без вызова render_pdf?

Это то, что не работает:

  render_pdf :template => 'caseprinttemplates/create_pdf_to_print.erb', :pdf_file => "/home/mattias/www/Inkasso/public/uploadedfiles/" + results[:title]

  redirect_to new_interventionreminder_path(:case_id => @interventionreminder.case_id, :saved => "1")
  return

Это работает на другой странице:

render_pdf :template => 'caseprinttemplates/create_pdf_to_print.erb', :layout => nil, :send_file => { :filename => "samladutskrift.pdf"}

1 Ответ

0 голосов
/ 26 января 2012

Плагин act_as_flying_saucer - это просто оболочка для java-библиотеки Flying Saucer. В источнике видно, что определен только один метод-оболочка: render_pdf ().

https://github.com/dagi3d/acts_as_flying_saucer/blob/master/lib/acts_as_flying_saucer_controller.rb

Вы можете, однако, использовать render_pdf () для рендеринга в файл, как показано в примерах здесь :

# Renders the template located at '/foo/bar/pdf.html.erb' and stores the pdf 
# in the temp path with a filename based on its md5 digest
render_pdf :file => '/foo/bar/pdf.html.erb'

# renders the template located at 'app/views/foo.html.erb' and saves the pdf
# in '/www/docs/foo.pdf'
render_pdf :template => 'foo', :pdf_file => '/www/docs/foo.pdf'

# renders the 'app/views/foo.html.erb' template, saves the pdf in the temp path
# and sends it to the browser with the name 'bar.pdf'
render_pdf :template => 'foo', :send_file => { :filename => 'bar.pdf' }
...