【发布时间】:2020-12-13 18:12:05
【问题描述】:
我必须从POST 请求中获取数据值并将其写入Word 文档。但我遇到了错误。我该如何解决这个问题?
def military_document(request):
if request.method == 'POST':
form = CreateMilitaryDocumentForm(request.POST, request.FILES, use_required_attribute=False)
if form.is_valid():
group_degree = request.POST.get('group_degree')
print(group_degree)
form.save()
messages.success(request, 'Added successfully !')
return HttpResponseRedirect('military_document')
else:
form = CreateMilitaryDocumentForm(use_required_attribute=False)
doc = DocxTemplate("../document.docx")
context = {
'form': form,
'group_degree': group_degree,
}
doc.render(context)
doc.save("generated_doc.docx")
return render(request, 'military_document.html', context)
【问题讨论】:
-
我假设变量是
group_degree? -
@WillemVanOnsem,是的,先生。
-
在 GET 请求的情况下,您永远不会为
group_degree分配任何东西,那么group_degree应该在context = { ... }中。 -
@WillemVanOnsem,很抱歉,先生,但没有得到答案。
-
如果
request.method == 'POST'则将group_degree设置为request.POST.get('group_degree')。如果request.method是not'POST',那么您不会将group_degree设置为任何值,但您仍然尝试在context中使用它。在这种情况下,您希望它具有什么价值?
标签: python-3.x django django-models django-views django-forms