这个问题已经在这里有一个答案:
- 如何做很多一对多的Django查询找书2名给出的作者吗? 3个回答
我有标签模型的实例的PK名单,说
pk_list = [10, 6, 3]
我有一个标签M2M领域的另一种模式,并完全包含3个标签的情况下(上述的PKS)。
class Node(models.Model):
...
tags = models.ManyToManyField(Tag, related_name='nodes')
我想找回在我pk_list指定包含精确设定的标签节点。 当我做
Node.objects.filter(tags__in=pk_list)
它返回三个相同的实例列表
[<Node: My node title>, <Node: My node title>, <Node: My node title>]
调用获得()因为它必须返回一个实例,显然是行不通的。
所以,我怎么检索单个实例? 我必须指出,如果我的pk_list是不同的如。 [10,6]或[10,6,3,7]然后我必须接收什么。 我需要一个精确匹配。
谢谢