我不能在两个查询集上执行AND。如,q1& Q2。我得到空集,我不知道为什么。我用最简单的情况对此进行了测试。我正在使用django 1.1.1
我基本上有这样的对象:
item1
name="Joe"
color = "blue"
item2
name="Jim"
color = "blue"
color = "white"
item3
name="John"
color = "red"
color = "white"
关于多对多关系或我缺少什么,有什么奇怪的吗?
queryset1 = Item.objects.filter(color="blue")
这给出了(item1,item2)
queryset2 = Item.objects.filter(color="white")
这给出了(item2,item3)
queryset1 & queryset2
给了我空集[]
OR运算符工作正常(我正在使用“|
”)
为什么会这样?
答案 0 :(得分:3)
qs = Item.objects.filter(color__in=['blue','white'])
答案 1 :(得分:1)
Item.objects.filter(color="blue").filter(color="white")