Django ORM: Как уменьшить количество запросов к базе?

Делаю запрос на выборку количества товаров в фильтрах, но получается большое кол-во запросов к базе. Можно ли сократить их количество до 1?

data = Product.objects.filter(category__in=descendants)

filters = {
    'color': data.values('color__name').filter(q_color).annotate(total=Count('color__name')),
    'style': data.values('style').filter(q_style).annotate(total=Count('style')),
    'tracery': data.values('tracery').filter(q_tracery).annotate(total=Count('tracery')),
    'size': data.values('sizes').filter(sizes__quantity__gt=0).filter(q_size).annotate(total=Count('sizes')),
    'material': data.values('composition__material__name').filter(q_material).annotate(
        total=Count('composition__material__name'))}
  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ответы на вопрос 1
@django-jobs
Кэширование пробовали?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы