我有这个型号:
scala> var s = "123456"
s: String = 123456
scala> s.map(_.toInt)
res0: scala.collection.immutable.IndexedSeq[Int] = Vector(49, 50, 51, 52, 53, 54)
scala> s.map(_.toInt).sum
res1: Int = 309
现在我想计算一个组中的成员数,但每个成员都是子组的一部分。
class MemberGroup(models.Model):
name=models.CharField(max_length=15)
class Subgroup(models.Model):
name=models.CharField(max_length=15)
member_group=models.ForeignKey(MemberGroup,related_name='membergroup_subgroup')
class Members(models.Model):
user=models.ForeignKey(User)
subgroup=models.ForeignKey(Subgroup)
给出了每组中的子组数。但我想要成员而我的尝试到目前为止失败了。
答案 0 :(得分:0)
如果您向MemberGroup
中的models.py
添加ManyToMany Field:
class MemberGroup(models.Model):
name=models.CharField(max_length=15)
members=models.ManyToManyField(Members)
然后你可以得到这样的计数:
MemberGroup.objects.all().annotate(c=Count('membergroup_members'))
或针对个别群体:
g = MemberGroup.objects.filter(...)
g[0].members.count()