我有这样的事情:
class Car(models.Model):
model = models.CharField(max_length=200)
brand = models.CharField(max_length=100)
status = models.ManyToMany(Status)
class Status(models.Model):
name = models.CharField(max_length=40)
date = models.DateTimeField('Status creation date')
如何查询最后状态(最新状态)为REPAIRED
的所有汽车?这只能在一个查询中实现吗?
答案 0 :(得分:1)
from django.db.models import Max
cars = Car.objects.annotate(Max('status__date')).filter(status__name='REPAIRED').distinct()
您可以阅读多对多关系的Django examples。