我很难弄清楚如何在Django ORM中使用注释来通过模型实现分组。
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()如果我的门店是洛杉矶、丹佛、休斯顿和亚特兰大,我如何使用最新订单日期按门店统计顾客数量?
Los Angeles: 25
Denver: 210
Houston: 400
Atlanta: 6发布于 2010-11-05 23:02:35
在Customer或Store上定义一个指向另一个模型的ManyToMany字段,并将Order作为through表。例如:
class Store(models.Model):
name = models.CharField(max_length=255)
orders = models.ManyToManyField(Customer, through=Order)现在您可以执行以下操作:
from django.db.models import Count
Store.objects.annotate(Count("orders__customer"))https://stackoverflow.com/questions/4107070
复制相似问题