#python #django #django-rest-framework
Вопрос:
Я работаю над проектом Django, кодирую некоторые вызовы API, в которых люди могут зарезервировать место для парковки. У меня есть база данных, и я хочу показать, сколько бронирований у каждого пользователя.
Я знаю, что это можно легко сделать на SQL, но я не могу найти способ сделать это на Python. Я уже пытался сделать то, что написано в документации: https://docs.djangoproject.com/en/3.1/topics/db/aggregation/#cheat-sheet но у меня это не работает.
Комментарии:
1. Вы можете получить количество с помощью <Модель>.объекты.фильтр(<Модель><поле>=<поле><значение>).количество()
2. Можете ли вы опубликовать код, который вы пробовали? Как сказал @Михай, вы можете отфильтровать бронирования по конкретному пользователю, а затем подсчитать их с
count
помощью метода.
Ответ №1:
Вы должны импортировать количество:
from django.db.models import Count
Тогда попробуйте сделать что-нибудь в этом роде:
return X.objects.values('xx').annotate(xx=Count('xx')).filter(xx__gte = whatever you want).count()
Должно сработать