如何通过过滤相关对象来过滤对象

时间:2019-01-22 11:34:48

标签: django python-3.x django-models

我正在使用python 3.7和django 2.1。

我正在尝试通过“最新的”孩子对象属性来过滤父对象

我可以使用2个查询(请参见-Django Query That Get Most Recent Objects From Different Categories

Class Bakery(models.Model):
     town = models.CharField()

Class Cake(models.Model):
    bakery = models.ForeignKey(Bakery, related_name="cakes")
    baked_at = models.DateTimeField()
    is_chocolate = models.BooleanField()

我想做的事情是这样的:

bakeries_whose_latest_cake_was_chocolate = Bakery.objects \
    .annotate(latest_cake=F('cakes__baked_at=Max(cakes__baked_at')) \
    .filter(is_chocolate=True)

0 个答案:

没有答案