猿问

如何使用Q对象测试列表成员资格?

对于普通的Django查询集,如果要检索其“ a”属性为1、2或3的所有myObjects,我将执行以下操作:

myObjects.objects.filter(a_in=[1,2,3])

但是我想使用Q对象来做到这一点。如何编写带有Q对象的等效查询?


凤凰求蛊
浏览 177回答 3
3回答

翻过高山走不出你

它看起来应该像这样:myObjects.objects.filter(Q(a = 1) | Q( a = 2) | Q( a = 3))我不知道你为什么要这么做,但你也可以做到myObjects.objects.filter(Q(a__in=[1,2,3])

料青山看我应如是

它马上就可以工作。Q(a__in=[1, 2, 3])可能您的问题是您使用的是单个下划线而不是两个。
随时随地看视频慕课网APP

相关分类

Python
我要回答