У меня есть две модели, авторы и статьи:
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 . Проблема в том, что следует учитывать только те статьи, которые уже опубликованы. Согласно билету 11305 в трекере Django, это пока невозможно. Я попытался использовать аннотацию CountIf
, упомянутую в этом билете, но она не заключает в кавычки строку даты и времени и не делает все соединения, которые ей понадобятся.
Итак, что является лучшим решением, кроме написания собственного SQL?