Bonjour,
J’utilise prawn pour générer des pdf. prawn vient avec prawn-layout
quang je “freeze” mes gems (unpack), j’obtiens bien prawn dans mon
répertoire vendor/gems mais pas prawn-layout et une fois mon
application déployée, j’ai une erreur car il ne trouve pas la method
table ui se trouve dans prawn-layout
J’ai essayé en déclarant prawn-layout (config.gem) mails dans ce cas
j’ai une erreur de chargement au lancement du serveur
Ou est ce que je fais une erreur?
Merci
Bonjour, quelques précisions:
- j’ai aussi essayé en copiant le prawn-layout dans vendor/gems
- j’utilise le plugin prawnto
J’ai essayé en déclarant prawn-layout (config.gem) mails dans ce cas
j’ai une erreur de chargement au lancement du serveur
L’erreur que tu obtiens dans ce cas pourrait être utile pour
diagnostiquer.
– Thibaut
J’ai regardé un peu plus en détail et en fait il très probable que
“prawn-layout” que j’ai copié dans vendor/gems n’est pas
chargé.Par contre dans le plugin qui charge prawn et prawn-layout, j’ai
require ‘prawn’
begin
require “prawn/layout” # give people what they probably want
rescue LoadError
end
Si je force le chargement de prawn-layout avec uniquement la ligne
require “prawn/layout”
chez mon hébergeur, j’ai une erreur de l’appli (parce qu’il ne trouve
pas prawn-layout)
Savez vous comment voir ou il va chercher le “prawn/layout” qui
visiblement ne se charge pas (je ne vois rien dans les log)
Merci
En fait en local, gems installé, tout fonctionne bien.
1 - Si je freeze et que je déploie
- le freeze ne copie pas prawn-layout
- sur mon serveur j’ai l’erreur suivante (la méthode “table” est
définie dans prawn-layout
ActionView::TemplateError (undefined method `table’ for
#Prawn::Document:0xb6d0b784) on line #50 of maintenance_notebooks/
index.pdf.prawn:
47: @insurances.each do |i|
48: table_i << [i.title, display_date_date(i.due_date).to_s,
i.company.name]
49: end
50: pdf.table table_i, :font_size => 12,
51: :horizontal_padding => 10,
52: :vertical_padding => 3,
53: :border_width => 2,
2 - Si je copie manuellement le gem prawn-layout dans vendor/gems et
que je déploie j’ai la même erreur que précedemment (j’ai bien
redémarré mon serveur)
3 - si je rajoute en plus un config.gem "prawn-layout’ dans ce cas
même en local ça ne marche pas et j’ai l’erreur
no such file to load – prawn-layout
Nicolas
Bonjour,
j’ai juste freezé prawn et prawn-layout ( je ne vois pas prawn-core,
prawn-format quand je fais un gem list)
On dirait qu’il faut que j’indique un chemin plus précis pour le
require “prawn/layout” mais je ne vois pas pourquoi et je ne vois pas
lequel.
Nicolas
Juste une idée si tu n’as pas déjà résolu ton problème: as-tu freezé
les dépendances de prawn (ex: prawn-core, prawn-format) ?
Si tu as trouvé la solution, peux-tu la partager ?
a+
– Thibaut
On Jun 19, 6:25 pm, Tranquiliste [email protected]
Tranquiliste a écrit :
Bonjour, visiblement je configurais mal le gem en rajoutant :lib =>
“prawn/layout”, ça marche. Pourtant je pensait qu’il cherchait
automatiquement dans lib
la ligne complète
config.gem “prawn-layout”, :version => “0.1.0”, :lib => “prawn/
layout”
Oui il cherche bien dans lib mais en se basant sur le nom du gem. Du
coup il cherchait :
lib/prawn-layout et non lib/prawn/layout
–
Cyril M.
Bonjour, visiblement je configurais mal le gem en rajoutant :lib =>
“prawn/layout”, ça marche. Pourtant je pensait qu’il cherchait
automatiquement dans lib
la ligne complète
config.gem “prawn-layout”, :version => “0.1.0”, :lib => “prawn/
layout”
Oui il cherche bien dans lib mais en se basant sur le nom du gem. Du
coup il cherchait :
lib/prawn-layout et non lib/prawn/layout
Merci Cyril, mais pourquoi le gem fonctionne-t-il correctement en
local (gem non “freezé”) ou j’ai juste fait le gem install …