Django:组计数外键

时间:2014-04-23 09:00:02

标签: python sql django

我是Django的新手,从PHP过渡。我有以下查询列出分组变量的前十个计数,该变量是另一个表的外键。

Model.objects.values('group').annotate(count = Count('group')).order_by('-count')[:10]

数据的目的地是模板,详细说明了联盟'。打印到模板时,我想列出组的可读名称而不是整数外键值。在查询中使用values()返回字典而不是对象,我用于处理外键的先前方法失败。提前谢谢!

1 个答案:

答案 0 :(得分:1)

使用values()查询集函数,您可以使用以下方法提取外键模型的字段:

.values('foreign__field')

参考您的示例,假设您的群组模型具有“名称”字段,您可以使用:

Model.objects.values('group', 'group__name')...

如果您将该dict传递到模板中,那么您可以参考'group__name'键:

{% for g in groups %} {{ g.group__name }}