正如其他人提到的那样,这样做的最佳方式是制作一个模板,然后将结果变成国防军,使用周围许多图书馆之一。 这种方法为你提供了对模板的通常控制,例如使用标签。
I ve使用了前面提到的《劳工/灾难报告》的设置,但认为这相当有限,大多数布局必须使用表格,而CSS2光谱的许多部分尚未执行。
http://code.google.com/p/wkhtmltopdf/“rel=“nofollow noreferer”>wkhtmltopdf。 它是网上Kit的不间断分布。 这样做的好处是,使你的模板像任何网络浏览器一样,使你能够使用网基特特定额外数据,例如网上Kit存在的CSS3光谱的一部分。
https://github.com/incuna/django-wkhtmltopdf rel=“nofollow noreferer”>django-wkhtmltopdf。 您可以查阅render_to_pdf
,而不是通常的Djangorender_to_response<>。
申斥: 我是该图书馆的撰稿人。
Update
该图书馆已经改名为CBVs,以下大部分信息(我可以帮助补充某些情况)现已在图书馆本身实施方便。
见quickstart。 举例说明如何执行以下编码部分。 如果需要更先进的使用,请将PDFTemplateView
分类,并增加各种选择,如档案名称和间隙。
实例:
from django.shortcuts import render_to_response
from wkhtmltopdf import render_to_pdf
def pdf(request):
context.update({ objects : ModelA.objects.filter(p_id=100)})
kwargs = {}
if request.GET and request.GET.get( as , ) == html :
render_to = render_to_response
else:
render_to = render_to_pdf
kwargs.update(dict(
filename= model-a.pdf ,
margin_top=0,
margin_right=0,
margin_bottom=0,
margin_left=0))
return render_to( pdf.html , context, **kwargs)
有条件的发言请你通过? 页: 1 它为目前这样做提供了一种简单的方法,但计划很快释放。
采用这一看法,你可以照搬<代码>目标/代码”的内容,因为你通常甚至会延长基数。 我通常为国防军使用不同的风格,以维持和读写风格,因为你们需要为国防军做几件不同的事情,例如,如果你想把你的脚石放在同一个地方,就设置了一张min。
关于本说明,你可以制作头版和脚版模板,作为<条码>kwargs的一部分,将其输入_to_pdf。