Django ';列表';对象没有属性';过滤器';
(类型是抽象的,类型1类型2类型3是继承的类) 我发现这个错误“list”对象没有属性“filter”基本上,当你使用多个queryset时,你就失去了queryset的功能。链接后,它们成为迭代器的一部分。您可以通过迭代迭代器或显式调用Django ';列表';对象没有属性';过滤器';,django,django-models,django-views,Django,Django Models,Django Views,(类型是抽象的,类型1类型2类型3是继承的类) 我发现这个错误“list”对象没有属性“filter”基本上,当你使用多个queryset时,你就失去了queryset的功能。链接后,它们成为迭代器的一部分。您可以通过迭代迭代器或显式调用list来访问迭代器的值。您需要在链接查询集之前执行查询 def g_view(request): header_category = Category.objects.all() m = Type1.objects.all() r=Ty
list
来访问迭代器的值。您需要在链接查询集之前执行查询
def g_view(request):
header_category = Category.objects.all()
m = Type1.objects.all()
r=Type2.objects.all()
g=Type3.objects.all()
from itertools import chain
orders=list(sorted(chain(m,r,g),key=lambda objects:objects.start))
mquery = request.GET.get('m')
if mquery:
orders = orders.filter(
Q(name__icontains=mquery) |
Q(game__name__icontains=mquery) |
Q(teams__name__icontains=mquery)).distinct()
query = Q(name__icontains=mquery) |
Q(game__name__icontains=mquery) |
Q(teams__name__icontains=mquery)
m = Type1.objects.filter(query).distinct()
r = Type2.objects.filter(query).distinct()
g = Type3.objects.filter(query).distinct()
orders=list(sorted(chain(m,r,g),key=lambda objects:objects.start))