ruby-on-rails-3 – Rails,Prawn – PDF显示在浏览器等中

前端之家收集整理的这篇文章主要介绍了ruby-on-rails-3 – Rails,Prawn – PDF显示在浏览器等中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Fellas,我正在努力掌握对虾的pdf宝石.

好的,我远离主人lvl.我能够生成一个pdf. gemfile中的每个宝石都包括

  1. gem 'MysqL','~> 2.8.1'
  2. gem 'prawn','~> 0.12.0'
  3. gem 'pdf-reader','~> 0.10.0'
  4. gem 'Ascii85','~> 1.0.1'

在config / application.rb中:

  1. config.autoload_paths << "#{Rails.root}/app/reports"

比控制器:

  1. require 'prawn'
  2.  
  3. def index
  4. pdf = Prawn::Document.new
  5. pdf.text "Hello World"
  6. pdf.render_file "x.pdf"
  7. end

比我调用索引函数.名为x.pdf的PDF在我的应用程序的根目录中创建.在gemfile中,rakefile和config.ru.

题:

>如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件
>如何使该操作在浏览器窗口中生成文件,不保存?
>如何使其保存并显示在浏览器窗口中?

你的,凯尔

解决方法

如何强制大虾在应用/报告(或任何其他选定的)文件夹中生成文件
  1. def index
  2. pdf = Prawn::Document.new
  3. pdf.text "Hello World"
  4. pdf.render_file File.join(Rails.root,"app/report","x.pdf")
  5. end

如何在浏览器窗口中生成文件,不保存?

  1. def index
  2. pdf = Prawn::Document.new
  3. pdf.text "Hello World"
  4. send_data pdf.render,:filename => "x.pdf",:type => "application/pdf"
  5. end

如何保存并显示在浏览器窗口中?

  1. def index
  2. pdf = Prawn::Document.new
  3. pdf.text "Hello World"
  4. filename = File.join(Rails.root,"x.pdf")
  5. pdf.render_file filename
  6. send_file filename,:type => "application/pdf"
  7. end

猜你在找的Ruby相关文章