这是我的页面:
<p>Request as string: {{ request.POST }}</p>
哪个正确呈现:
Request as string: <QueryDict: {‘csrfmiddlewaretoken’: [‘HPOQ0pfVf5DU0Lkz05IXqbECipdPUOcTiNGYWd4giZC7LVL5Y6jdT0nb0AcmX9pd’], ‘txtNumBins’: [‘3’]}>
我正在尝试访问列表txtNumBins.但是当我在我的Django模板中尝试以下任何一项时:
<p>Total bins: {{ request.POST['txtNumBins'][0] }} </p>
<p>Total bins: {{ request.POST.get('txtNumBins')[0] }} </p>
<p>Total bins: {{ request.POST['txtNumBins'] }} </p>
<p>Total bins: {{ request.POST.get('txtNumBins') }} </p>
我一直得到一个相同的错误:
TemplateSyntaxError at /analysis/
Could not parse the remainder: '['txtNumBins'][0]' from'request.POST['txtNumBins'][0]'
如何按名称访问字典元素txtNumBins?
最佳答案 如您所见,您不能默认使用函数调用,按键访问字典或在模板内列出索引.您可能最好在视图中获取此信息,并将其作为响应上下文的一部分传递.例如:
def my_view(request):
total_bins = request.POST['txtNumBins'][0]
return render(request, 'my_template.html', {'total_bins': total_bins})
然后在您的模板中,您可以:
<p>Total bins: {{ total_bins }}</p>