Question

Je veux ajouter des capacités de reporting à mon application Rails et je me bats un certain temps maintenant sur lequel le logiciel de déclaration à utiliser pour créer mes documents PDF.

Jusqu'à présent, je suis assez sûr que ce soit Ruport ou Prawn sont la meilleure façon d'aller.

Après avoir expérimenté avec les deux, je trouve que les deux sont très puissants et tout à fait universel, mais ils ont aussi des particularités distinctes et je suis inquiet que dans le long terme, je pourrais faire le mauvais choix.

Comment Ruport et comparer Prawn les uns aux autres considerung utilisation à long terme dans une application vaste et complexe?

  • maintenabilité? le code de génération de rapport croître de façon exponentielle? Est-ce que le code ont tendance à se fragiliser?
  • Disponibilité? Est-ce que la bibliothèque toujours tenus à jour dans quelques années? (Ruport-util semble être quelque peu dépassée ...)
  • Customizability? Comment est-il facile de générer différentes mises en page pour différents clients en utilisant la même base de code?
  • le plus important de tous: Tous les autres aspects que je ne suis pas au courant de ce que je devrais considérer avant de faire un choix

Merci d'avance!

Était-ce utile?

La solution

Je voudrais effacer la différence entre les projets vers le haut. Ruport est un cadre minimal pour la construction de rapports qui peuvent être produites dans de nombreux formats différents. Le formatter PDF inclus utilise l'ancien PDF Writer, qui est tout à fait complet et stable, mais est lente et de mémoire. L'objectif de Prawn est purement pour rendre les fichiers PDF et il remplacera PDF Writer en Ruport à un moment donné.

Autres conseils

Si vous générez le mode hors connexion de PDF (c'est qu'ils ne doivent pas nécessairement être construit dynamiquement et envoyé immédiatement à l'utilisateur quand il leur demande) Je recommanderais d'utiliser ERb et LaTeX. Je l'ai utilisé pour générer des rapports avec succès pour les données de l'enquête. La syntaxe est peut-être un peu rébarbative si vous ne l'avez pas utilisé avant, mais il LATEX en valait la peine à mon avis. Je l'utilise aussi gnuplot pour générer des graphiques et des diagrammes à inclure dans les rapports.

D'accord - aller Prawn. Certains commentaires de l'utilisation Prawn

  • documentation est bonne et il y a des exemples simples sur la façon de commencer. Voir aide crevettière Rails
  • meilleur endroit pour trouver les exemples est dans les pierres précieuses installées - vérifier sous le langoustine format et langoustine-layout répertoires
  • vous pouvez faire la plupart des choses dont vous avez besoin pour générer des rapports, etc.

Je dis: "Allez-y pour Prawn". La raison en est que le gars qui travaille sur Prawn est actif sur la liste de diffusion Ruby, alors que je ne sais pas qui gère Ruport.

Le seul inconvénient que je l'ai remarqué avec Prawn est que vous ne pouvez pas avoir des cellules à plusieurs colonnes dans les tableaux. Par exemple - une ligne d'en-tête qui couvre toutes les colonnes. Je devine que la même chose avec Ruport.

Toute personne ne hésitez pas à me corriger si je me trompe - j'aimerais utiliser langoustine, mais besoin de tables personnalisées et ne veulent pas essentiellement les mains libres.

Actuellement, je suis en utilisant HTMLDDOC , ce qui se traduit par des vues html dans les documents PDF. L'inconvénient HTMLDOC est le manque de soutien css.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top