小编Ush*_*her的帖子

如何在 django 中基于父查询集创建预取查询集

这是一个场景,一个包含多个投标的项目模型。

Class Project(models.Model):
    user = models.ForeignKey()

Class Bid(models.Model):
    project = models.ForeignKey(Project, related_name='bids')
Run Code Online (Sandbox Code Playgroud)

当我们查询项目时,我们想要预取项目的投标。

Project.objects.filter(whatever condition).prefetch_related(
     Prefetch('bids', queryset=Bid.objects.all())
)
Run Code Online (Sandbox Code Playgroud)

这里我们只想获取属于过滤项目的投标,而不是所有投标,我们如何指定呢?我期待类似的事情

queryset=Bid.objects.filter(project=project?)... 
Run Code Online (Sandbox Code Playgroud)

谢谢。

django prefetch django-queryset

6
推荐指数
1
解决办法
3889
查看次数

标签 统计

django ×1

django-queryset ×1

prefetch ×1