首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过另一个模型为Group By添加Django注释

通过另一个模型为Group By添加Django注释
EN

Stack Overflow用户
提问于 2010-11-05 22:55:51
回答 1查看 289关注 0票数 1

我很难弄清楚如何在Django ORM中使用注释来通过模型实现分组。

代码语言:javascript
复制
from django.db import models

class Customer(models.Model):
    name = models.CharField(max_length=255)

class Store(models.Model):
    name = models.CharField(max_length=255)

class Order(models.Model):
    customer = models.ForeignKey(Customer)
    store = models.ForeignKey(Store)
    order_date = models.DateTimeField()

如果我的门店是洛杉矶、丹佛、休斯顿和亚特兰大,我如何使用最新订单日期按门店统计顾客数量?

代码语言:javascript
复制
Los Angeles: 25
Denver: 210
Houston: 400
Atlanta: 6
EN

回答 1

Stack Overflow用户

发布于 2010-11-05 23:02:35

CustomerStore上定义一个指向另一个模型的ManyToMany字段,并将Order作为through表。例如:

代码语言:javascript
复制
class Store(models.Model):
    name = models.CharField(max_length=255)
    orders = models.ManyToManyField(Customer, through=Order)

现在您可以执行以下操作:

代码语言:javascript
复制
from django.db.models import Count
Store.objects.annotate(Count("orders__customer"))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4107070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档