Django object_name在模板中呈现

时间:2016-03-23 08:23:19

标签: django django-templates django-views

我已经看到了SO帖子,但似乎无法找到它。

我的结果是在我的模板中使用object_name作为渲染
{'sessions__sum': 29649}

而不仅仅是
29649

我怎样才能显示总和?谢谢。

更新

我意识到,由于缺乏知识,我可能没有正确地提出我的问题,所以下面是我的视图和我在浏览器中呈现的模板的屏幕截图。希望这有助于澄清事情。

查看

year_weekly_filter.filter(created__week_day=1).aggregate(Sum('sessions'))
monday2014 = year_weekly_filter.filter(created__week_day=2).aggregate(Sum('sessions'))

模板

{{ monday2014 }}

ScreenShot - 在浏览器中呈现的方式

enter image description here

2 个答案:

答案 0 :(得分:1)

你的意思是模板中的{{object}}是由字典对象呈现的吗? 在这种情况下,以这种方式访问​​密钥。

{{object.sessions__sum}}

您可以在this获得帮助,相关文档为here

我没有足够的积分来添加评论,所以我在这里猜测。

答案 1 :(得分:1)

您应该注意:" aggregate()是QuerySet的终端子句,在调用时,返回名称 - 值对的字典。" - Django Docs
如果您只想将单个值返回给变量而不是dict,请使用.get之类的:

monday2014 = year_weekly_filter.filter(created__week_day=2).aggregate(Sum('sessions')).get('sessions__sum',0)