Salut tout le monde , j’arrive pas à générer le pdf avec django,
a chaque fois j’ai une erreure : unexpected exception in unicode2T1 @ src\rl_addons\rl_accel_rl_accel.c:634 caused by bad argument type for built-in operation
views.py
def pdf(request,id):
buffer = io.BytesIO()
c = canvas.Canvas(buffer,pagesize=letter,bottomup=0)
textob=c.beginText()
textob.setTextOrigin(inch,inch)
textob.setFont('Helvetica',14)
fichier=Permission.objects.filter(id=id)
lignes=[]
for fiche in fichier:
lignes.append(fiche.motif)
lignes.append(fiche.date_debut)
lignes.append(fiche.date_fin)
lignes.append(fiche.date_reprise)
for line in lignes:
textob.textLine(line)
c.drawText(textob)
c.showPage()
c.save()
buffer.seek(0)
return FileResponse(buffer, as_attachment=True, filename='permission.pdf')
A noté que quand j’enléve au niveau du code :
lignes.append(fiche.date_debut)
lignes.append(fiche.date_fin)
lignes.append(fiche.date_reprise)
ça marche
Je ne connais pas le français, j’espère que Google Translate fera un travail adéquat ici.
Vous ne montrez pas ce modèle “Permission” que vous utilisez, donc je ne peux que faire une supposition ici.
Il semble que vous puissiez ajouter un DateField à votre liste lines, puis le transmettre à la méthode textLine. J’essaierais de formater cette date d’abord. Ou, comme test rapide, changez
I don’t know French, I hope Google Translate does an adequate job here.
You don’t show this Permission model that you are using, so I can only make a guess here.
It looks like you may be appending a DateField to your lines list, and then passing that to the textLine method. I’d try formatting that date first. Or, as a quick test, change
I remember being in that same place with reportlab, and it was one panic attack later when I realized I was needing a string wrapper for certain fields.