练习加载题目优化

This commit is contained in:
caoqianming 2020-03-27 10:32:10 +08:00
parent 014b339395
commit c5905e8425
1 changed files with 6 additions and 9 deletions

View File

@ -269,16 +269,13 @@ class ExerciseView(APIView):
permission_classes = []
def post(self, request):
questioncat = request.data['questioncat']
queryset = Question.objects.filter(is_delete=0,questioncat=questioncat)
queryset = Question.objects.filter(is_delete=0,questioncat=questioncat).order_by('id')
if 'ydtms' in request.data and request.data['ydtms']:
queryset = queryset.exclude(id__in = request.data['ydtms'])
total = queryset.count()
queryset = queryset.order_by('id')[0:10]
# pg = CommonPagination()
# p = pg.paginate_queryset(queryset=queryset,request=request,view=self)
# serializer = QuestionSerializer(instance=p,many=True)
# return pg.get_paginated_response(serializer.data)
serializer = QuestionSerializer(instance=queryset,many=True)
count = queryset.count()
pg = CommonPagination()
p = pg.paginate_queryset(queryset=queryset,request=request,view=self)
serializer = QuestionSerializer(instance=p,many=True)
collects = request.user.collects.all().values_list('id',flat=True) #当前用户收藏的题目
results = serializer.data
for i in results:
@ -286,4 +283,4 @@ class ExerciseView(APIView):
i['is_collect'] = True
else:
i['is_collect'] = False
return Response({'total':total, 'results':results})
return Response({'count':count, 'results':results})