У меня есть модель, похожая на эту:
class Input(models.Model):
details = models.CharField(max_length=1000)
user = models.ForeignKey(User)
class Case(Input):
title = models.CharField(max_length=200)
views = models.IntegerField()
class Argument(Input):
case = models.ForeignKey(Case)
side = models.BooleanField()
Пользователь может представить много аргументов в каждом конкретном случае. Я хочу сказать, сколько пользователей отправили side=true
аргументов.
Я имею в виду, если у 1 пользователя было 10 аргументов, а у другого - 2 (оба side=true
)
Я бы хотел, чтобы счет был 2, а не 12.
Обновление:
Я использую эти методы для объекта Case:
def users_agree(self):
return self.argument_set.filter(side=True).values('user').distinct()
def users_disagree(self):
return self.argument_set.filter(side=False).values('user').distinct()
Мой код шаблона вызывает на них count()
.