我有两种模式:
class Unit (models.Model):
Unit_name = models.CharField(max_length=30)
Hull_number = models.CharField(max_length=30)
Parent_unit = models.ForeignKey("self", blank=True, null=True)
Class = models.ForeignKey(Class)
email = models.CharField(max_length=50, default='')
Member = models.ManyToManyField(Member, through='MemberUnit')
def __str__(self):
return self.Unit_name
class MemberUnit(models.Model):
Member = models.ForeignKey(Member)
Unit = models.ForeignKey(Unit)
Position = models.ForeignKey(ClassPosition)
def __str__(self):
return self.Unit.Unit_name + " " +
self.Position.unit_position.Position_name + " ( " +
self.Member.first_name + " " + self.Member.last_name + " )"
我是Django的新手(有点)。查询是我缺乏的地方。 我需要的是Unit_names的总计数。
为此,我需要一个查询作为我视图的一部分,以提供Unit_Name及其计数。 对此的任何帮助将不胜感激。
由于
答案 0 :(得分:2)
希望这会有所帮助:
from django.db.models import Count
MemberUnit.objects.values('Unit__Unit_name').annotate(c=Count('Unit'))
你可以在Django的shell中试试这个:
manage.py shell
请参阅docs