我正在 Django 中开发 pdf 显示功能,
用户以 HTML 形式输入数据并可以点击 Preview
按钮以查看 pdf 格式的预览
这些是我的 views.py 中返回 pdf 作为响应的行
pdf = render_to_pdf('new_pdf.html', params)
return HttpResponse(pdf, content_type='application/pdf')
这里render_to_pdf()
使用 HTML 模板和普通的 python 字典在 html 页面上嵌入数据并将其转换为 pdf我目前正在将表单 POST 数据作为参数传递,即
params = {'data':request.POST}
request.POST 看起来像这样<QueryDict: {'csrfmiddlewaretoken': ['some_random_string_here'], 'client_id': ['26'], 'note_no': ['5']}>
还有一些领域......现在我可以简单地使用
{{data.client_id}}
在我的 HTML 中获取数据到目前为止一切正常
但我需要向我的参数提供一些额外的数据以在 pdf 上显示
我想知道是否有办法在
request.POST
中附加我的额外变量喜欢request.POST['credit_type'] = [credit_type]
但这不是一个普通的 python 字典,它给出了This QueryDict instance is immutable
有什么解决方法吗?还是我必须使用常规方法将键值对附加到我的
params
然后使用它们?
最佳答案
if request.method == 'POST':
updated_request = request.POST.copy()
updated_request.update({'credit_type': [credit_type]})
关于django - 将额外数据附加到 Django 中的 request.POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65047248/