【发布时间】:2010-03-29 11:19:46
【问题描述】:
您能帮我通过 Rails 应用程序将文件导出为 excel、pdf 和 .doc 格式吗?
【问题讨论】:
-
该死,您需要 Reporting Services,它可以做到这一切......除非您能找到与 RoR 一起使用的报告解决方案。
标签: ruby-on-rails
您能帮我通过 Rails 应用程序将文件导出为 excel、pdf 和 .doc 格式吗?
【问题讨论】:
标签: ruby-on-rails
对于 Excel
在 config/initializers/mime_types.rb 中
Mime::Type.register_alias "text/html", :excel
Mime::Type.register "text/x-ms-iqy", :iqy
然后在您的控制器中处理 .iqy 和 .excel 格式
respond_to do |format|
format.html
format.excel
format.iqy {
text = "WEB\n1\n%s" % URL_FOR_DATA_VIA_GET, :format => :excel)
render :text => text
}
end
您的 excel 格式模板应该只是一个包含数据的 HTML 表格。 iqy 格式只呈现文本,现在需要操作模板。您可能需要一个没有所有导航等的 application.excel.erb 文件,因此您会得到一个漂亮干净的 html 表。另请参阅this KB article 了解更多 iqy 信息。
对于 PDF
用于文档
我建议您只使用简单的文本或 RTF。我不知道有什么插件可以解决这个问题,但可能有一些东西。
另一种方法
我在纯 Java 项目中使用 JasperReports 取得了巨大成功。可以使用 JasperServer 产品、JRuby、您自己的应用程序包装器或 ruby-java 桥来使用 Jasper 生成输出。见this post。一旦你参与了 Java,你也会得到美妙的JExcelApi。
【讨论】: