Fellas,我正在努力掌握对虾的pdf宝石.
好的,我远离主人lvl.我能够生成一个pdf. gemfile中的每个宝石都包括:
- gem 'MysqL','~> 2.8.1'
- gem 'prawn','~> 0.12.0'
- gem 'pdf-reader','~> 0.10.0'
- gem 'Ascii85','~> 1.0.1'
在config / application.rb中:
- config.autoload_paths << "#{Rails.root}/app/reports"
比控制器:
- require 'prawn'
- def index
- pdf = Prawn::Document.new
- pdf.text "Hello World"
- pdf.render_file "x.pdf"
- end
比我调用索引函数.名为x.pdf的PDF在我的应用程序的根目录中创建.在gemfile中,rakefile和config.ru.
题:
>如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件?
>如何使该操作在浏览器窗口中生成文件,不保存?
>如何使其保存并显示在浏览器窗口中?
你的,凯尔
解决方法
如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件?
- def index
- pdf = Prawn::Document.new
- pdf.text "Hello World"
- pdf.render_file File.join(Rails.root,"app/report","x.pdf")
- end
- def index
- pdf = Prawn::Document.new
- pdf.text "Hello World"
- send_data pdf.render,:filename => "x.pdf",:type => "application/pdf"
- end
如何保存并显示在浏览器窗口中?
- def index
- pdf = Prawn::Document.new
- pdf.text "Hello World"
- filename = File.join(Rails.root,"x.pdf")
- pdf.render_file filename
- send_file filename,:type => "application/pdf"
- end