我已根据views.py
resp = HttpResponse(mimetype='application/pdf')
txn = transaction.objects.order_by('user', 'id')
report = txn_reports(queryset=txn)
print report
report.generate_by(PDFGenerator, filename='filename.pdf')'
这个PDF文件正在保存在项目文件夹中,我不需要它,我希望它提示用户保存文件的位置。
我想在客户端的浏览器中为此PDF提供下载选项。如何为HTML中的此文件提供“另存为”功能,以便客户端可以下载PDF格式
答案 0 :(得分:1)
获取PDF数据并发送为HttpReponse。
我过去做过类似的事情,用比萨生成报告:
template = get_template("my_template.html")
context = Context({"data": report_data})
html = template.render(context)
result = StringIO.StringIO()
pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("UTF-8")), result)
if not pdf.err:
return HttpResponse(result.getvalue(), mimetype='application/pdf')
真正重要的是最后一行,我们使用pdf文档返回HttpResponse。然后,用户的浏览器将提示他保存它,或者如果支持则显示它。
答案 1 :(得分:0)
您可以做的是将此pdf作为HttpResponse发送到浏览器,浏览器将自动打开pdf并为用户提供保存方式。