Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 4、axlsx和acts_as_xlsx:如何使每列都有自己的工作表?_Ruby On Rails_Excel_Ruby On Rails 4_Axlsx - Fatal编程技术网

Ruby on rails Rails 4、axlsx和acts_as_xlsx:如何使每列都有自己的工作表?

Ruby on rails Rails 4、axlsx和acts_as_xlsx:如何使每列都有自己的工作表?,ruby-on-rails,excel,ruby-on-rails-4,axlsx,Ruby On Rails,Excel,Ruby On Rails 4,Axlsx,宝石 教程 在本教程中,将Post模型添加到excel工作表中,每个属性都是一列。然而,出于我的目的,我希望每一篇文章都是自己的。我对这两种宝石都是新手,在做出调整时遇到了困难 是否有人已经完成了这项工作,可以分享他们所做的工作?参考示例,您可以为每个列创建一个工作簿,并将每个工作簿的第一张工作表复制到一个新工作簿中,其中包含模型的所有工作表 format.xlsx { p = Axlsx::Package.new wb = p.workbook col_1 = Post.t

宝石

教程

在本教程中,将Post模型添加到excel工作表中,每个属性都是一列。然而,出于我的目的,我希望每一篇文章都是自己的。我对这两种宝石都是新手,在做出调整时遇到了困难

是否有人已经完成了这项工作,可以分享他们所做的工作?

参考示例,您可以为每个列创建一个工作簿,并将每个工作簿的第一张工作表复制到一个新工作簿中,其中包含模型的所有工作表

format.xlsx {
  p = Axlsx::Package.new
  wb = p.workbook

  col_1 = Post.to_xlsx({:columns => [:id]})
            :name => "Posts1"

  wb.worksheets[0] = col_1.workbook.worksheets.first

  col_2 = Post.to_xlsx({:columns => [:content]})
            :name => "Posts2"

  wb.worksheets[1] = col_2.workbook.worksheets.first

  begin
    temp = Tempfile.new("posts.xlsx")
    p.serialize temp.path
    send_file temp.path, :filename => "posts.xlsx", :type => "application/xlsx"
  ensure
    temp.close
    temp.unlink
  end
}