Условная аннотация Django

Я удивлен, что этот вопрос, по-видимому, еще не существует. Если это так, пожалуйста, помогите мне найти его.

Я хочу использовать annotate (Count) и order_by, но я не хочу подсчитывать все экземпляры связанного объекта, а только те, которые соответствуют определенному критерию.

То есть, я мог бы перечислить ласточек по количеству зеленых кокосов, которые они несли:

swallow.objects.annotate(num_coconuts=Count('coconuts_carried__husk__color = "green"').order_by('num_coconuts')
8
задан jMyles 10 August 2011 в 04:44
поделиться