比方说,在某些数据库中,我有人,具有以下属性:
如果我想让所有被称为 Stuart 或 Steve 的人,我可以使用Q对象:
qs = People.objects.filter(Q(name='Stuart') | Q(name='Steve'))
但是,如果我收到一个 n 个名字列表怎么办?例:
['Bob, 'John','Rachel', 'Some other names that i don't know'...]
我如何使用列表中的 n 个未知名称构建查询?
答案 0 :(得分:3)
简单的解决方案是使用标准过滤器__in=
name_list = ['Bob', 'John', 'Rachel']
qs = People.objects.filter(name__in=name_list)
答案 1 :(得分:2)
一种实现此目的的方法是qs = People.objects.filter(name__in=['list of names'])
,但我不确定,还有另一种有效的方法。