我正在寻找一种方法来使用相关项目子集的计数来注释查询集。以下是我的模型的一个子集:
class Person(models.Model):
Name = models.CharField(max_length = 255)
PracticeAttended = models.ManyToManyField('Practice',
through = 'PracticeRecord')
class Club(models.Model):
Name = models.CharField(max_length = 255)
Slug = models.SlugField()
Members = models.ManyToManyField('Person')
class PracticeRecord(PersonRecord):
Person = models.ForeignKey(Person)
Practice = models.ForeignKey(Practice)
class Practice(models.Model):
Club = models.ForeignKey(Club, default = None, null = True)
Date = models.DateField()
我正在寻找一个查询集来注释一个人参加的俱乐部特定实践的数量。我已经可以通过以下查询找到该人的练习总数Person.objects.all().annotate(Count('PracticeRecord'))
但是,我想以某种方式注释一个人参加特定俱乐部的练习次数。
我更喜欢使用 django ORM 的东西,而不必求助于编写原始 SQL。
谢谢。