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