考虑到长期使用,Ruport vs. Prawn

时间:2010-02-03 12:56:33

标签: ruby-on-rails ruby reporting prawn ruport

我想在我的Rails应用程序中添加报告功能,现在我正在努力使用哪种报告软件来创建我的PDF文档。

到目前为止,我非常确定RuportPrawn是最佳选择。

在对它们进行试验后,我发现它们都非常强大且非常普遍,但它们也有不同的特点,我担心从长远来看,我可能会做出错误的选择。

Ruport和Prawn如何在大型复杂的应用程序中相互比较长期使用?

  • 可维护性?生成代码的报告会成倍增长吗?代码是否容易变脆?
  • 状况?几年后图书馆仍会积极维护吗? (ruport-util似乎有些过时......)
  • 定制性?使用相同的代码库为不同的客户端生成不同的布局有多容易?
  • 最重要的是:在做出选择之前我不应该考虑的任何其他方面?

提前谢谢!

6 个答案:

答案 0 :(得分:4)

如果你正在生成PDF的离线(也就是说它们不需要动态构建并在他们请求时立即发送给用户)我建议使用ERb和LaTeX。我已经成功地使用它来生成调查数据的报告。如果您之前没有使用过LaTeX,那么语法可能有些偏差,但在我看来这是值得的。我还使用gnuplot生成图表和图表以包含在报告中。

答案 1 :(得分:4)

我想清除项目之间的区别。 Ruport是用于构建可以以多种不同格式输出的报告的最小框架。附带的PDF格式化程序使用旧的PDF Writer,它功能齐全且稳定,但速度慢,内存密集。 Prawn的目标纯粹是渲染PDF,它将在某个阶段取代Ruport中的PDF Writer。

答案 2 :(得分:2)

同意 - 去找Prawn。使用Prawn的一些评论

  • 文档很好,有关如何入门的简单示例。请参阅Using Prawn in Rails
  • 查找示例的最佳位置在已安装的宝石中 - 请在 prawn-format prawn-layout 目录下查看
  • 您可以执行生成报告等所需的大部分内容。

答案 3 :(得分:1)

我说:“去寻找虾”。原因是在Prawn上工作的人在Ruby邮件列表上是活跃的,而我不知道谁处理Ruport。

答案 4 :(得分:1)

我注意到Prawn唯一的缺点是你不能在表格中有多列单元格。例如 - 跨越所有列的标题行。我猜对Ruport也一样。

如果我错了,任何人都可以随意纠正我 - 我喜欢使用虾,但需要自定义表格,并且不想基本上免费提供它们。

目前我正在使用HTMLDDOC,它将html视图转换为pdf文档。 HTMLDOC的缺点是缺乏CSS支持。

答案 5 :(得分:1)