【发布时间】:2020-04-22 12:31:45
【问题描述】:
我有以下模型,它有 3 个类 Project,CrawlerProject,CrawlerResults
class CrawlerProject(models.Model):
user = models.ForeignKey(User,on_delete=models.SET_NULL,null=True)
cralwer_results_M2M = models.ManyToManyField(CrawlerResults,blank=True)
class Project(models.Model):
user = models.ForeignKey(User,on_delete=models.SET_NULL,null=True)
crawler_project_M2M = models.ManyToManyField(CrawlerProject,blank=True)
在这里,我想计算单个Project 对象中所有CrawlerProjects 存在的CrawlerResults 对象的总数。
projects = Project.objects.all().prefetch_related('crawler_project_M2M')
for each_proj in projects:
total_num_of_crawler_results = each_proj.crawler_project_M2M__cralwer_results_M2M.count() ## count all the crawler_results objects of all crawler_project present in current `project` object.
我如何以一种有效的方式(单个查询)来获得嵌套的 ManyToMany 类的总数?
【问题讨论】:
标签: django django-models django-rest-framework django-forms