Python 数据库中多个关键字后的Django查询

Python 数据库中多个关键字后的Django查询,python,django,Python,Django,我有一行代码在数据库中查找包含字符串Waiting的字段,但我也希望它查找名为Timeout的字段 我当前的代码如下所示: query_running = Usertasks.objects.all().filter(user=request.user).filter(TaskStatus="Waiting") 这非常有效,但我还需要搜索字符串Timeout 我试过这样的代码,但不起作用 query_running = Usertasks.objects.all().filter(user=r

我有一行代码在数据库中查找包含字符串Waiting的字段,但我也希望它查找名为Timeout的字段

我当前的代码如下所示:

query_running = Usertasks.objects.all().filter(user=request.user).filter(TaskStatus="Waiting")
这非常有效,但我还需要搜索字符串
Timeout

我试过这样的代码,但不起作用

query_running = Usertasks.objects.all().filter(user=request.user).filter(TaskStatus="Waiting", "Timeout")
为了清楚起见,它应该搜索任意一个词。这两个词不会同时出现。

您可以使用:

如果希望user=request.user和TaskStatus=Waiting或Timeout:

query_running = Usertasks.objects.filter(user=request.user, TaskStatus__in=["Waiting", "Timeout"])
如果没有:

query_running = Usertasks.objects.filter(user=request.user).filter(TaskStatus__in=["Waiting", "Timeout"])

@LesnieSncheider我建议您将其写成:
Usertasks.objects.filter(user=request.user,TaskStatus\uu in=[“等待”,“超时])
您不需要
.all()
或额外的
.filter()
——干杯!此外,您还可以同时过滤所有内容。我将更新我的答案以包含这个和@javierbuszi sugestion.@javierbuszi the
。所有的
都在那里,因为我使用这个函数来查询HTML中的其他内容。所以它的存在是有原因的。我只是没有发布那部分:-)我需要看更多的代码,但我的第一个预感是你不需要它——除非你正在构建一个查询……不管它是一个noop操作。