[转][http://tb.blog.csdn.net/TrackBack.aspx?PostId=1844264]
首先是安装 gem install spreadsheet-excel
其次 在script 文件夹中新建一个叫export的文件,里面代码如下:
#!/usr/bin/env ruby
require File.dirname(__FILE__) + '/../config/environment'
require "spreadsheet/excel"
include Spreadsheet
users=User.find_by_sql("select count(*) from users where created_at < '#{Time.now.strftime("%Y-%m-%d")}' and created_at > '#{1.day.ago.strftime("%Y-%m-%d")}'")
workbook = Excel.new("#{RAILS_ROOT}/public/reports/report_#{Time.now.strftime('%Y-%m-%d')}.xls")
worksheet = workbook.add_worksheet("Report of #{1.day.ago.strftime('%Y-%m-%d')}")
worksheet.write(0, 0, "#{1.day.ago.strftime('%Y-%m-%d')}")
worksheet.write(1, 0, "Daily Registered users")
worksheet.write(2, 0, "#{users[0].count.to_i}")
workbook.close
第三:执行ruby script/export. 到public文件夹中看一下,是不是多了一个excel表格。
有时我们需要将导出来的表格作为邮件附件发送出去。那么我们需要在上面的代码底部,加入这段:
Notifier.deliver_export
model代码如下:
class Notifier < ActionMailer::Base
def export
@recipients = "XXX@gmail.com" #收件人邮箱
#@cc = "XXX@sina.com","XXX@163.com" #抄送人邮箱
@subject = "#{Time.now.strftime('%Y-%m-%d')} data"
@body = ""
@data = ""
File.open("#{RAILS_ROOT}/public/reports/report_#{Time.now.strftime('%Y-%m-%d')}.xls", "rb").each { |fp| @data<<fp }
attachment :content_type =>"application/vnd.ms-excel",
:filename => "export_#{Time.now.strftime('%Y-%m-%d')}.xls" ,
:body => @data
end
end
这样就实现了使用spreadsheet-excel 把数据导入到Excel表格中,并且作为邮件附件发送给别人了。
分享到:
相关推荐
将mysql中的数据导出成Excel,很好用的类,测试成功!
C#利用Response流将数据库数据导出成Excel C#语言是一种功能强大且灵活的编程语言,广泛应用于各种软件开发领域。其中,数据导出功能是许多软件系统中必不可少的功能之一。在本文中,我们将探讨如何使用C#语言将...
标题中的“将pb数据表导出excel”是指在PowerBuilder(PB)9.0环境中,将数据窗口(DataWindow)中的数据转换并保存为Excel电子表格格式的过程。PowerBuilder是一款强大的客户端/服务器应用程序开发工具,它支持数据...
OLE技术允许不同应用程序之间共享数据和功能,对于本例来说,就是利用VFP控制Excel进行数据导出。 ##### 3.2 获取表结构信息 为了准确地将数据表导出到Excel中,首先需要获取该表的基本结构信息,包括字段的数量和...
### C#将数据导出为Excel格式的知识点详解 #### 一、导出到Excel的基本原理与步骤 在本示例中,我们主要探讨如何使用C#编程语言将数据导出为Excel格式。该示例提供了较为完整的实现过程,包括用户界面交互、Excel...
在Java开发中,将数据导出到Excel是一种常见的需求,特别是在数据分析、报表生成或数据交换等场景下。Excel因其易用性和丰富的格式设置能力,成为处理结构化数据的理想选择。本篇文章将深入探讨如何利用Java实现这一...
标题中的“PB数据窗口导出Excel”指的是在PowerBuilder(PB)环境中,使用数据窗口对象将数据导出到Microsoft Excel格式的过程。数据窗口是PowerBuilder中的一个重要组件,它用于显示和操作数据库中的数据,提供了...
在本资源中,我们探讨的是如何处理`DataGridView`的多维表头以及如何将多维表格的数据导出到Excel文件中。这个过程涉及到几个关键的知识点,包括`DataGridView`的自定义渲染、多级表头的实现以及数据导出的逻辑。 ...
在本项目中,"SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip",我们主要关注的是如何利用Java技术栈来处理Excel文件,并与数据库进行交互。以下是相关知识点的...
在MATLAB Simulink环境中,将示波器数据导出到Excel表格是一项常见的需求,这有助于数据的存储、分析和进一步处理。以下是一份详细的步骤教程: 首先,我们需要准备一个Simulink模型,在模型中添加必要的组件。核心...
本篇我们将探讨如何利用Qt将SQLite数据库中的数据导出到Excel格式,这是一个实用的功能,尤其对于需要数据分析和报告的项目。 首先,让我们理解这个过程的基本步骤: 1. **连接SQLite数据库**:使用`QSqlDatabase`...
原文为《Qt中将QTableView中的数据导出为Excel文件>>,地址http://blog.csdn.net/superjoel/article/details/5321404,资源比较难下载,我下载好帮作者上传下。实例可用,简单易懂,对于QTableView导出为excel...
接下来,要将数据库中的数据导出为Excel文件,我们可以使用`xlsx`或` SheetJS `库。`xlsx`库是一个强大的工具,能够读取、写入多种电子表格格式,包括XLS、XLSX和CSV等。在`excel.js`文件中,开发者可能定义了函数,...
为了将这些数据导出到Excel,我们需要在KEIL中设置数据导出选项。通常,KEIL可以通过仿真器或调试器的内存查看器来查看和复制内存数据。在内存窗口中选择要导出的数据范围,然后通过复制(Ctrl+C)将数据粘贴到Excel...
另一种方法是使用专门的数据迁移工具,如SQLite Manager(Firefox插件)或SQLiteStudio,它们通常提供数据导出功能,包括导出到Excel格式。 对于Excel数据导出到SQLite,流程基本相反。先打开Excel文件,将数据保存...
在IT行业中,将数据导出为Excel文件是一种常见的需求,特别是在数据分析、报表生成以及数据交换等场景中。这里,我们关注的是如何利用Struts2框架将数据转化为Excel格式。Struts2是一个流行的Java web开发框架,它...
在Java编程中,导出数据到Excel文件是一项常见的任务,特别是在数据分析、报表...通过以上步骤,我们可以构建一个灵活且高效的Java程序,将数据库中的数据导出为具有多级表头的Excel文件,满足数据分析和报告的需求。
在IT行业中,前端数据处理和展示是至关重要的,特别是在企业级应用中,用户往往需要将大量数据导出为便于分析的格式,如Excel。本文将详细介绍如何在基于EasyUI的前端框架下实现数据导出为Excel的功能。 EasyUI是一...
数据导出到Excel.html ,数据导出到Excel.html