【发布时间】:2021-04-15 06:30:49
【问题描述】:
我必须明智地显示列表班次,例如必须先显示全天班次结果,然后是下午然后晚上 但现在它先显示下午然后显示晚上然后显示白天 这是我的代码
views.py:
def get_queryset(self):
getall = self.request.GET.get("getall")
if self.request.user:
versions = LogVersion.objects.filter(
form__airport__id=self.request.user.aerosimple_user.airport_id
).exclude(status=DRAFT)
filters = self.request.GET.get("filters")
tags = self.request.GET.get("tags")
logs = Log.objects.none()
result = Log.objects.none()
for v in versions:
if len(v.operation_logs.order_by('-id').all())>0:
result = result | v.operation_logs.order_by('-id').all()
result = result.exclude(shift_name = None).exclude(shift_name='')
# if getall:
if getall:
return Log.objects.filter(
form__form__airport__id=self.request.user.aerosimple_user.airport.id)
if filters is not None:
filters = filters[:-2] if filters[-2:] == ',,' else filters
filters_list = filters.split(',,')
for filters in filters_list:
log = result.filter(Q(type = filters) | Q(subtype = filters))
if filters == 'Inspection Completed':
log = result.filter(Q(description = filters))
elif log != []:
for r in result:
if r.tags is not None and filters in r.tags:
log =result.filter(id=r.id)
else:
log = result.filter(Q(type = filters) | Q(subtype = filters))
logs = logs | log
return logs.all()
return result
如何正确排序
【问题讨论】:
-
您可以使用
sorted(my_list, key=func)方法。你必须有一些函数来详细说明它们应该如何排序。没有看到您要排序的列表,很难知道如何提供帮助
标签: python python-3.x django django-rest-framework