【发布时间】:2010-05-20 15:15:38
【问题描述】:
我有两个模型、作者和文章:
class Author(models.Model):
name = models.CharField('name', max_length=100)
class Article(models.Model)
title = models.CharField('title', max_length=100)
pubdate = models.DateTimeField('publication date')
authors = models.ManyToManyField(Author)
现在我想选择所有作者并用他们各自的文章计数来注释他们。这对 Django 的aggregates 来说是小菜一碟。问题是,它应该只计算已经发表的文章。根据 Django 票务跟踪器中的ticket 11305,这还不可能。我尝试使用该票证中提到的CountIf 注释,但它没有引用日期时间字符串,也没有进行它需要的所有连接。
那么,除了编写自定义 SQL 之外,最好的解决方案是什么?
【问题讨论】: