Подсчет M2M-объектов в Джанго - PullRequest
0 голосов
/ 11 ноября 2011

У меня есть следующая модель:

Задача класса (Модель):

solvers = ManyToManyField(User, related_name='slvrs')

Теперь я хочу посчитать общее количество решателей всех задач. Например, в базе данных есть 3 объекта Task. Первый был решен 2 пользователями (поле M2M относится к 2 пользователям), второй - 3, а последний - 0. Я должен получить счет всех этих решателей: 2 + 3 + 0 = 5.

Я считаю, что мне нужно использовать агрегат Count, но я знаю, какие модели и какие аннотации.

1 Ответ

1 голос
/ 11 ноября 2011
Task.objects.aggregate(count=Count('solvers'))['count']

Должен дать вам то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...