Django QuerySet:获取包含集合中至少一个元素的对象

问题描述 投票:1回答:1

我有两个模型,它们之间具有多对多关系。如何使用给定的模型A对象来获取与模型B的至少一个公共对象相关的一个模型的每个对象(例如模型A)?就像获取与给定博客文章对象共享至少一个标签对象的博客文章。

django many-to-many
1个回答
1
投票
与模型B的至少一个公共对象有关的一个模型的每个对象(例如模型A)”

使用您的博客示例:

post1 = Posts.objects.get(id=1)

posts_with_same_tags = Posts.objects.filter(tags__in=post1.tag_set)

可以回答您的问题吗?

QuerySet API参考:https://docs.djangoproject.com/en/dev/ref/models/querysets/#in

ManyToMany API参考:https://docs.djangoproject.com/en/dev/topics/db/examples/many_to_many/

© www.soinside.com 2019 - 2024. All rights reserved.