В документации Django приведены примеры для использования annotate () для получения агрегированных результатов на основе связанных полей QuerySet (т. Е. С использованием соединений в annotate ()).
Упрощенный пример из документации, например, Store.objects.annotate(min_price=Min('books__price'))
, где books - это поле ManyToMany Store to Book, а price - это поле Book.
Чтобы продолжить этот пример, как мне сгенерировать аннотированные объекты QuerySet of Store с самыми низкими ценами не для всех книг в магазине, а только для книг с "author = 'William Shakespeare'"? Другими словами, как мне отфильтровать связанные поля, используемые для расчета агрегата?