का उपयोग कर एचटीएमएल से पीडीएफ जेनरेट करें मैं एक नए प्रश्न के साथ वापस आ रहा हूं जिसे मैं जवाब देने में असमर्थ हूं, जिसने पूरे दिन अपने सिर को खरोंच कर दिया है।Django और Reportlab
मैं "पीडीएफ डाउनलोड करें" बटन पर क्लिक करके किसी वेबपृष्ठ से पीडीएफ जेनरेट करना चाहता हूं। मैं Reportlab और XHTML2PDF सहित कई मॉड्यूल की कोशिश की लेकिन मैं किसी भी पीडीएफ और न ही इसे डाउनलोड करने उत्पन्न करने में सक्षम नहीं कर रहा हूँ ... यहाँ मैं क्या Reportlab के साथ किया था, तो निम्न है Render HTML to PDF in Django site
- - views.py - -
import cStringIO as StringIO
import ho.pisa as pisa
from django.template.loader import get_template
from django.template import Context
from django.http import HttpResponse
from cgi import escape
def index_data(request):
#Code to generate data
return render(request, "analytics/stat.html", locals())
return render_to_pdf(
'analytics/stat.html',
{
'pagesize':'A4',
'mylist': results,
}
)
def render_to_pdf(template_src, context_dict):
template = get_template(template_src)
context = Context(context_dict)
html = template.render(context)
result = StringIO.StringIO()
pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("ISO-8859-1")), result)
if not pdf.err:
return HttpResponse(result.getvalue(), content_type='application/pdf')
return HttpResponse('We had some errors<pre>%s</pre>' % escape(html))
- - urls.py - -
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^$', "analytics.views.main_page", name="main_page"),
url(r'^portail/$', "analytics.views.index_data", name="index"),
url(r'^generate_pdf/$', "analytics.views.GroupPDFGenerate.as_view()", name="generate_pdf")
]
- - टेम्पलेट एनालिटिक्स/stat.html - -
{% extends "analytics/layout.html" %}
{% block title %}
Audience
{% endblock title %}
{% block head %}
# Script to generate google charts
{% endblock head %}
{% block body %}
<div class="page-header">
<h1 align="center"> Audience </h1>
</div>
<div class="row">
<div class="col-md-1">
<h3 align="center"><a href="/logout/">Logout</a></h3>
<h3 align="center"><a href="statistiques.pdf">Download pdf</a></h3>
</div>
</div>
{% endblock %}
इसके अलावा
, वहाँ पर कार्रवाई करने के लिए एक बेहतर मॉड्यूल है?
बहुत धन्यवाद! यह उपयोग करने के लिए बहुत सरल लगता है! Django के साथ कोड को आप कैसे एकीकृत करेंगे? एक दृश्य के माध्यम से? –
यह आपके द्वारा किए जा रहे कार्यों पर निर्भर करेगा, लेकिन हां, एक दृश्य में सबसे अधिक संभावना है। – FlipperPA
wkhtmltopdf के साथ मेरे पास एक समस्या यह है कि इसे बाहरी बाइनरी की आवश्यकता होती है जो हेरोकू जैसी सेवाओं को तैनात करने में समस्याग्रस्त है। – metakermit