Export PDF pada Django
Pada kesempatan kali ini saya akan menampilkan cara untuk export dokumen pdf dengan Django. Untuk menghasilkan sebuah dokumen pdf, dibutuhkan library tambahan yaitu xhtml2pdf, install dengan printah berikut pada command prompt
pip install xhtml2pdf
selanjutnya buat file bernama render.py
from io import BytesIO from django.http import HttpResponse from django.template.loader import get_template from xhtml2pdf import pisa def render_to_pdf(template_src, context_dict={}): template = get_template(template_src) html = template.render(context_dict) result = BytesIO() #Bagian ini akan meng-generate pdf pdf = pisa.pisaDocument(BytesIO(html.encode("ISO-8859-1")), result) if not pdf.err: return HttpResponse(result.getvalue(), content_type='application/pdf') return None
langkah selanjutnya buka views.py input code dibawah ini, fungsi dari code ini untuk melakukan
generating pdf dokumen
</pre> from django.template.loader import get_template from .render import render_to_pdf def get_pdf(request): #mengambil template data ={} data['coba'] = "Ini adalah hasil cetak" pdf = render_to_pdf('coba.html',data) #render template return HttpResponse(pdf, content_type='application/pdf')
untuk pemanggilan fungsi input code berikut pada urls.py
url(r'^get_pdf', views.get_pdf, name='get_pdf'),
kemudian buat template dengan nama coba.html, fungsi get_pdf pada views.py akan melakukan generating pdf pada halaman html tersebut.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Django HTMLtoPDF Tutorial</title> </head> <body> <h1>HTML To PDF</h1> Berikut ini adalah halaman yang akan di generate pdf oleh django </body> </html>
selanjutnya lakukan pemanggilan fungsi tersebut pada url
localhost:8000/get_pdf
maka akan muncul document pdf yang kita inginkan
sekian tutorial dari saya.
Comments:0