Python 合并django中未知数量的查询集

Python 合并django中未知数量的查询集,python,django,django-queryset,Python,Django,Django Queryset,我想要完成的是在管理中合并未知数量的查询集。我有一个用户可以查看的作者列表,根据列表中的作者,用户应该只能看到他们的文章。我得到的是: def get_queryset(self, request): #getting all the lists and doing not important stuff return (qs.filter(author__name = list(list_of_authors)[0]) | qs.filter(author__name = li

我想要完成的是在管理中合并未知数量的查询集。我有一个用户可以查看的作者列表,根据列表中的作者,用户应该只能看到他们的文章。我得到的是:

def get_queryset(self, request):
    #getting all the lists and doing not important stuff
    return (qs.filter(author__name = list(list_of_authors)[0]) | qs.filter(author__name = list(list_of_authors)[len(list_of_authors)-1])).distinct()
如果用户可以查看来自两位作者的文章,那么这是可行的,但是,对于三位作者,这是不可行的。我尝试使用:

for index in list_of_authors:
    return qs.filter(author__name = list(list_of_authors)[index])
Author类有一个
name=Charfield(max\u length=50)


遗憾的是,我只得到了最后一个查询集。当数量未知时,是否可以合并查询集,因为经过大量搜索后,我没有找到任何东西。

您正在中查找
\u

您的名称字段不是容器,您正在将其与容器进行比较。正如你所知道的,做这些艰苦的工作并没有那么容易,因此Django已经通过查找为你完成了这项工作


简短版本:
qs.filter(author\uu name\uuu in=list\u of\u authors)

您正在
中查找的
\uu>

您的名称字段不是容器,您正在将其与容器进行比较。正如你所知道的,做这些艰苦的工作并没有那么容易,因此Django已经通过查找为你完成了这项工作


简短版本:
qs.filter(author\uu name\uuu in=list\u of\u authors)

你能显示相关的模型,特别是作者字段定义吗?我编辑了这个问题,因为有一个小错误。你能显示相关的模型吗,特别是作者字段的定义?我编辑了这个问题,因为有一个小错误。这就是为什么我喜欢django。这就是为什么我喜欢django。