2
我有一个Django模型(ModelA
),其中ManyToManyField
链接到另一个模型(ModelB
)。如何过滤Django模型中的对象(ManyToMany)与另一个模型中特定的一组对象相关?
我想写的是选择那些与实例从模型B
一组特定我想那种喜欢做这样的A型的所有实例的查询:
related_set = ModelB.objects.filter(id__in=(1,2))
ModelA.objects.filter(modelb_set=related_set)
,但似乎选择
我想选择A型实例使用有关实例1 或 2模型B模型的实例是:
- 是模型B实例1 和 2有关;
- 与任何其他模型B实例无关。
是的,愚蠢的错误。 :-)如果你想添加几个条件,你可以使用'reduce'用'filter'方法,或者用[Q objects](https://docs.djangoproject.com/en/dev/topics/db/queries/#复杂的查找与 - q-对象)。我只是使用字典将是最优雅的,但没有运气。 :-)我删除了我的答案。 – DrTyrsa
当然 - 如果它可以采取任意数量的条件,这通常会更有用。非常感谢您的帮助,但它确实指出了我的正确方向。 –