1 回答

TA貢獻(xiàn)1829條經(jīng)驗 獲得超7個贊
好的,我光滑的大腦一夜之間起了一些漣漪,今天早上想通了:
# views.py
class GeneratePDFView(TemplateView):
permission_classes = [IsAuthenticated]
def get(self, request, *args, **kwargs):
template_name = 'test.html'
filename = 'test.pdf'
context = {'key': 'value'}
# generate response
response = PDFTemplateResponse(
request=request,
template=template_name,
filename=filename,
context=context,
cmd_options={'load-error-handling': 'ignore'})
# write the rendered content to a file
with open(settings.PDF_DIR + '/' + filename, "wb") as f:
f.write(response.rendered_content)
return HttpResponse('Hello, World!')
這將 PDF 保存到磁盤,也沒有響應(yīng) PDF。顯然是一個我可以擴(kuò)展的最小功能示例,但至少解決了這兩個問題。
添加回答
舉報