我想知道如何从名为'my_movie_code_count'的变量中获取模板中的值:
my_movie_code_count = Code.objects.values('movie__title').annotate(Count('movie'))
如果我对控制台进行了打印,我得到:
for m in my_movie_code_count:
pprint.pprint(m)
控制台输出:
{'movie__count': 1, 'movie__title': u'THE MEN WHO STARE AT GOATS'}
{'movie__count': 3, 'movie__title': u'PIRATE RADIO'}
{'movie__count': 1, 'movie__title': u'A SERIOUS MAN'}
{'movie__count': 3, 'movie__title': u'GREENBERG'}
{'movie__count': 1, 'movie__title': u'MILK'}
{'movie__count': 1, 'movie__title': u'TEST'}
模板:(目前它不会显示任何输出。)
{% for movie in my_movie_code_count %}
{{movie.title}}:{{movie.count}}
{% endfor %}
答案 0 :(得分:3)
my_movie_code_count[0].movie__count
现在我知道这不是完全想要的,所以你可以为注释添加一个名字:
my_movie_code_count = Code.objects.values('movie__title').annotate(num=Count('movie'))
print my_movie_code_count[0].num
1
您可以在此处查看文档:{{3}}
此外它没有显示任何内容,因为django在模板上静默失败(因此设计师不会破坏整个页面)。如果您检查属性,则其名称为movie__title
和movie__count
,因此您必须将模板属性更改为:
{{ movie.movie__title }}: {{ movie.movie__count }}