【问题标题】:Django Group By relation's dataDjango Group By 关系的数据
【发布时间】:2010-02-10 03:15:13
【问题描述】:

在 Django 中,

我可以做 value(),然后 distinct() 来分组。

A
{
     Foreign Key B
}
B
{
     String name
}

但是,是否可以使用相关对象的数据进行分组? IE。在上述关系中,我可以按 B 的名字对 A 进行分组吗?

【问题讨论】:

  • 你试过做 A.objects.all().value("B__name").distinct()

标签: python django django-models group-by


【解决方案1】:

我认为你可以在 FKey 模型上 order_by。

A.objects.order_by('B__name')

如果你不能,你需要使用 Django ORM 的 Annotation API 来创建一个新字段,你将能够相应地对其进行排序:

A.objects.annotate(bname='B__name').order_by('bname')

【讨论】:

  • 第一个作品。第二个不是因为注释需要在其中进行聚合。谢谢
猜你喜欢
  • 1970-01-01
  • 2021-01-13
  • 1970-01-01
  • 2013-06-19
  • 1970-01-01
  • 2019-09-02
  • 1970-01-01
  • 2021-08-01
  • 2019-02-28
相关资源
最近更新 更多