首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用write_xlsx gem创建动态xlsx

使用write_xlsx gem创建动态xlsx
EN

Stack Overflow用户
提问于 2016-09-07 22:42:57
回答 1查看 1.2K关注 0票数 0

我想为用户导出我的数据库的一部分作为.xlsx

我设法创建了一个静态文件,并让用户下载它,但这并不是真正的重点。

用户应该选择他想要的过滤器,因此应该直接通过浏览器创建和下载该文件。

我的代码看起来像这样:

控制器

代码语言:javascript
复制
def download_pdf
  send_data generate_pdf,
            type: "application/xlsx"
end

private

def generate_pdf
  workbook = WriteXLSX.new('export.xlsx')

  worksheet = workbook.add_worksheet

  worksheet.write(0, 0, 'status')
  worksheet.write(0, 1, 'date')
  worksheet.write(0, 2, 'customer')

  workbook
end

结果将是一个文件,其内容就是对象的名称

代码语言:javascript
复制
#<WriteXLSX:0x007fd9cf8aa290>

我不确定这是不是特定于write_xlsx的东西,或者我在这里遗漏了一些明显的东西。

EN

回答 1

Stack Overflow用户

发布于 2017-11-08 08:54:58

要将'export.xlsx‘保存到磁盘,您应该使用Workbook#close。请参阅下面的generate_xlsx方法。

代码语言:javascript
复制
def generate_xlsx
  workbook = WriteXLSX.new('export.xlsx')

  worksheet = workbook.add_worksheet

  worksheet.write(0, 0, 'status')
  worksheet.write(0, 1, 'date')
  worksheet.write(0, 2, 'customer')

  workbook.close   # <- Workbook#close
end

你可以在http://cxn03651.github.io/write_xlsx/index.html上阅读文档。

享受吧!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39372951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档