Rails PDF Prawn数据从控制器生成

时间:2010-08-13 07:33:03

标签: ruby-on-rails

我有一个名为report.pdf.prawn的文件,

这是我的PDF文件的视图部分,我们可以在其中编辑PDF文件的内容,例如>>>

*pdf=Prawn::Document.new(:page_layout =>:landscape,:page_size => 'A4')
pdf.text"Hello"
head=@headers
headers=[""],[""]
pdf.table headers,
:width => 768,
:size => 11,
:border_style => :underline_header,
:headers => [head.titleize],
:header_color => 'b7e3fe',
:padding=>5*

<<< etc ect...

以上就像

一样打印
Hello
Header1header2header3

我的控制器>>> def report <<<中有两个值为

@header@data

  • @header提供的值为Header1Header2Header3
  • @data提供的值为data11data12data13data21data22data23

如何在生成的所有PDF页面上打印如下所示格式的值?

Header1     Header2    Header3

data11      data12     data13

data21      data22     data23

data31      data32     data33

data41      data42     data33

1 个答案:

答案 0 :(得分:0)

cs = [ ]
    @sql_query.each do |column|
         data=[]


         if @headers.include?('data1x')
         column.number
         data << column.number
         end

             if @headers.include?('data2x')
         column.number
         data << column.number
         end

cs << data

end

pdf.table cs,

:width => 768,

:size => 11,

:border_style => :underline_header,

:headers => @header,

:header_color => 'b7e3fe',

:column_widths=>{0=>55,1=>100,2=>70,3=>77,4=>88,5=>90,6=>75,7=>75,8=>75,9=>65,10=>55,11=>55},
:padding=>5