这是我的页面:
<p>Request as string: {{ request.POST }}</p>
Run Code Online (Sandbox Code Playgroud)
哪个正确呈现:
作为字符串请求: <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>
Run Code Online (Sandbox Code Playgroud)
我不断收到相同的错误:
TemplateSyntaxError at /analysis/
Could not parse the remainder: '['txtNumBins'][0]' from'request.POST['txtNumBins'][0]'
Run Code Online (Sandbox Code Playgroud)
如何按名称访问字典元素 txtNumBins?
来自models.py
class Indicator(models.Model):
name = models.CharField(max_length=50)
youtube = models.CharField(max_length=LONG_BLOG_POST_CHAR_LEN)
description = models.CharField(max_length=LONG_BLOG_POST_CHAR_LEN)
recommendation = models.CharField(max_length=LONG_BLOG_POST_CHAR_LEN)
isPublic = models.BooleanField(default=False)
methods_path = models.CharField(max_length=100,default=None)
meta_description = models.CharField(max_length=150,default='')
image_path = models.CharField(max_length=100,blank=True)
def __str__(self):
return self.name
class IndicatorParameterInt(models.Model):
name = models.CharField(max_length=50)
value = models.IntegerField(default=1)
indicator_int_parameter = models.ForeignKey(Indicator, on_delete=models.CASCADE)
hidden = models.BooleanField(default=False)
class IndicatorParameterFloat(models.Model):
name = models.CharField(max_length=50)
setting = models.FloatField(default=1)
indicator_float_parameter = models.ForeignKey(Indicator, on_delete=models.CASCADE)
hidden = models.BooleanField(default=False)
class Comparison(models.Model):
name = models.CharField(max_length=100)
Run Code Online (Sandbox Code Playgroud)
来自admin.py
from django.contrib import admin
from .models import *
# Register your models here. …Run Code Online (Sandbox Code Playgroud)