Développement Web Ruby
par Sylvain CLAUDEL

Prawn 0.7 pdf header et footer deprecated NoMethodError Undefined Method

Date d'édition 2010-01-25 à 09:26

Pdf prawn rubyonrails

Si vous utilisez le gem prawn pour générer des pdf avec RubyOnRails ATTENTION : Spécifiez la version du gem utilisé dans environment.rb

config.gem 'prawn', :version => '<= 0.6.3'

Les méthodes footer et header ont été supprimées du gem, car elle n'était pas intuitive parait-il, donc si vous utilisez la version 0.7 et les méthodes footer et/ou header une vilaine erreur va s'afficher. (Erreur 500 en prod...)

Pour résoudre le problème euh bien adapter son code ! Il parait qu'il faut utiliser les repeaters de prawn....

https://prawn.majesticseacreature.com/docs/prawn-core/classes/Prawn/Document.html#M000139

Par exemple pour un footer :

Ceci
pdf.footer [pdf.margin_box.left, pdf.margin_box.bottom + 5] do
pdf.text "Super footer"
end

Devient
pdf.repeat :all do
pdf.text "Super footer", :at => pdf.bounds.bottom_left
end

à vos lignes de code....

Développement ruby et geekeries - rivsc