ruby-on-rails – Rails:使用to_xls gem将任意数组导出到Excel
发布时间:2020-12-17 02:34:06 所属栏目:百科 来源:网络整理
导读:我想以下列方式将数据从Rails导出到Excel: 支持特殊字符(é,?,ü等) 适用于所有版本的Excel 2007 允许我在导出之前添加计算列 我正在考虑使用to_xls gem,但无法让它在任意数组上工作(只有Active Record对象). 文档说gem只是略微面向导出Active Record集,并
我想以下列方式将数据从Rails导出到Excel:
>支持特殊字符(é,?,ü等) 我正在考虑使用to_xls gem,但无法让它在任意数组上工作(只有Active Record对象). 文档说gem只是略微面向导出Active Record集,并且它旨在将数组转换为Excel,因此它必须是可能的. 我认为问题在于它要求数组中的每个对象都响应.attributes.我尝试了向导出所基于的Active Record模型添加虚拟属性的方法,但似乎在调用.attributes时不显示. 我怎么能让这个工作? (或者你能否提出另一种实现这些目标的方法?) 解决方法
这适用于任意数组和ActiveRecord对象.显然,to_xls gem通过:columns和:headers参数支持所有自定义.
require 'bundler/setup' require 'to_xls' class Person attr_reader :first_name,:last_name def initialize(first_name,last_name) @first_name = first_name @last_name = last_name end def name "#{first_name} #{last_name}" end end array = [Person.new("Andrzej","Krzywda"),Person.new("Derek","Hill")] File.open("output.xls","w") do |f| f.write( array.to_xls( :columns => [:first_name,:last_name,:name],:headers => ["First name","Last name","name"] ) ) end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |