加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

从Django模板中的response.POST.get()访问QueryDict元素

发布时间:2020-12-20 11:56:20 所属栏目:Python 来源:网络整理
导读:这是我的页面: pRequest as string: {{ request.POST }}/p 哪个正确呈现: Request as string: QueryDict: {‘csrfmiddlewaretoken’: [‘HPOQ0pfVf5DU0Lkz05IXqbECipdPUOcTiNGYWd4giZC7LVL5Y6jdT0nb0AcmX9pd’], ‘txtNumBins’: [‘3’] } 我正在尝试访问
这是我的页面:

<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>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读