小编acw*_*acw的帖子

Django查询集基于子元素数量的过滤器

我正在使用 Django 过滤器来为我的项目进行一些过滤。我有以下型号:

class Foo(models.Model):
    pass

class Bar(models.Model):
    foo = models.ForeignKey(Foo, models.CASCADE)
Run Code Online (Sandbox Code Playgroud)

我的查询如下所示:

Foo.objects.filter(blah=blah)
Run Code Online (Sandbox Code Playgroud)

我想通过仅提供至少有 5 个通过 FK 连接的 Bar 对象的 Foo 对象来缩小此过滤器的范围。

因此,如果我有 3 个 Foo 对象,它们分别有 7、5 和 3 个具有 id 的 Bar 对象,那么只有前两个应该在最终查询集中。我该如何做到这一点,以便评估的查询集在内存中只包含前两个对象?

谢谢!

python django django-orm django-filter

4
推荐指数
1
解决办法
590
查看次数

标签 统计

django ×1

django-filter ×1

django-orm ×1

python ×1