Ich habe Pisa Produktion von .pdfs in Django im Browser gut, aber was ist, wenn ich die Datei automatisch auf die Festplatte schreiben möchte? Ich möchte eine .pdf-Versionsdatei zu bestimmten Zeitpunkten erstellen und sie in einem Upload-Verzeichnis speichern, so dass keine Interaktion mit dem Browser stattfindet. Ist das möglich?Verwenden von Pisa zum Schreiben einer PDF auf Festplatte
7
A
Antwort
12
Ja, es ist möglich. beispielsweise unter Verwendung von Code aus Greg Newman als Starter:
from django.template.loader import get_template
from django.template import Context
import ho.pisa as pisa
import cStringIO as StringIO
import cgi
def write_pdf(template_src, context_dict, filename):
template = get_template(template_src)
context = Context(context_dict)
html = template.render(context)
result = open(filename, 'wb') # Changed from file to filename
pdf = pisa.pisaDocument(StringIO.StringIO(
html.encode("UTF-8")), result)
result.close()
Sie müssen nur write_pdf mit einer Vorlage, Daten in einem dict und ein Dateinamen nennen.
Danke - genau das, was ich brauchte. – PhoebeB