如何在Q中使用Count



我有以下模型:

class Group(models.Model):
    group_name = models.CharField(max_length=16)
class Member(models.Model):
    group = models.ForeignKey('Group')
    member_name = models.CharField(max_length=16)
    gender = models.BooleanField() #False is "female", True is "male"

如何找到没有MemberGroup,或者男性Member的数量为零?

我尝试了以下操作,但没有成功:

Group.objects.filter( Q(member__isnull=True) |
                      Q(member__isnull=False) &
                      Q( Count(member__gender=True)=0 ) )

解决方案,

Group.objects.filter(Q(member__isnull=True) | ~Q(member__gender=True))

当你试图获取可能返回多个结果的东西时,你应该使用filter而不是get

如果要对查询集进行计数,可以使用

Group.objects.filter(Q(member__gender=False )).count()

相关内容

  • 没有找到相关文章

最新更新