基于ManyToManyField的Flitering django查询集
在我的 Request
模型中,有一个字段 requested_to
它是一个 ManyToManyField
requested_to = models.ManyToManyField(OrganizationUser)
我想过滤 Request
模型的查询集其中 organization_user
不在 requested_to
中
In my Request
model, there is a field requested_to
which is a ManyToManyField
requested_to = models.ManyToManyField(OrganizationUser)
I want to filter queryset of Request
model where a organization_user
is not in requested_to
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用以下方式进行过滤:
当您过滤
ManyToManyField
(或反向ForeignKey
)时,Django 会进行 LEFT OUTER JOIN,因此这里我们排除所有Request
其中organization_user
是requested_to
的成员。You can filter with:
Django makes LEFT OUTER JOINs when you filter on a
ManyToManyField
(or a reverseForeignKey
), so here we exclude allRequest
s whereorganization_user
is a member of therequested_to
.