在Django中的views.py中的n元组QuerySet结果中使用JSON属性

时间:2014-09-19 14:53:44

标签: python json django

我是django(和python)中的新手,我无法访问Django QuerySet结果的JSON属性。生成QuerySet的代码如下:

 species_list = Iris.objects.values("species").annotate(total=Count("species"))
 species = json.dumps(species_list,cls=DjangoJSONEncoder)

来自物种的JSON输出如下所示:

 [{"total": 50, "species": "setosa"}, {"total": 50, "species": "versicolor"}, {"total": 50, "species": "virginica"}]

我想要做的是将“total”属性值和“species”值分开以用于绘图目的,但在views.py中用于n3dv。即

xdata = species['species']
ydata = species['total']

但我收到错误:

Django Version:  1.6.5
Exception Type:  TypeError
Exception Value: string indices must be integers, not str

如何正确提取此值?

1 个答案:

答案 0 :(得分:0)

species是一个包含词典的列表。整个列表没有species密钥。您需要遍历列表并在其中的每个字典中访问该密钥。