У меня есть две модели, авторы и статьи:Джанго и условные агрегаты
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's aggregates. Проблема в том, что она должна учитывать только статьи, которые уже опубликованы. Согласно ticket 11305 в трекер-путеводителе Django, это еще не возможно. Я попытался использовать аннотацию CountIf
, упомянутую в этом билете, но он не цитирует строку datetime и не делает все необходимые ей соединения.
Итак, какое лучшее решение, кроме написания собственного SQL?
django-aggregate-if работал как шарм! – jobima