对于Excel
在config/initializers/mime_types.rb中
Mime::Type.register_alias "text/html", :excel
Mime::Type.register "text/x-ms-iqy", :iqy
Run Code Online (Sandbox Code Playgroud)
然后在您的控制器中处理.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
Run Code Online (Sandbox Code Playgroud)
您的Excel格式模板应该只是一个包含数据的HTML表格.iqy格式只需渲染文本,现在需要动作模板.您可能需要一个没有所有导航等的application.excel.erb文件,因此您可以获得一个干净的html表.另请参阅此知识库文章以获取更多iqy信息.
对于PDF
对于Doc
我建议您坚持使用简单的文本或RTF.我不知道有任何插件,但可能有一些东西.
另一种方法
我在纯Java项目上使用了JasperReports并取得了巨大的成功.可以使用JasperServer产品,JRuby,您自己的应用程序包装器或ruby-java桥来使用Jasper生成输出.看这篇文章.一旦你加入Java,你也会获得精彩的JExcelApi.
| 归档时间: |
|
| 查看次数: |
3755 次 |
| 最近记录: |