From a1cfdfa49bfe2e61c8e155861c8890800a916957 Mon Sep 17 00:00:00 2001 From: Egor Matveev Date: Fri, 25 Feb 2022 23:48:46 +0300 Subject: [PATCH] checkers --- Main/views/SolutionsTableView.py | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/Main/views/SolutionsTableView.py b/Main/views/SolutionsTableView.py index e37782c..5672566 100644 --- a/Main/views/SolutionsTableView.py +++ b/Main/views/SolutionsTableView.py @@ -9,30 +9,27 @@ class SolutionsTableView(BaseView): page_size = 20 page = None - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self.queryset = Solution.objects.all() - def pre_handle(self): if 'page' not in self.request.GET: raise AccessError() self.page = int(self.request.GET['page']) def get(self): + queryset = Solution.objects.all() if 'teacher' in self.request.GET.keys(): if 'set_id' in self.request.GET.keys(): - self.queryset = self.queryset.filter(set_id=self.request.GET['set_id']) + queryset = queryset.filter(set_id=self.request.GET['set_id']) elif 'task_id' in self.request.GET.keys(): - self.queryset = self.queryset.filter(task_id=self.request.GET['task_id'], set=None) + queryset = queryset.filter(task_id=self.request.GET['task_id'], set=None) else: raise AccessError() else: if hasattr(self.entities, 'setTask'): - self.queryset = self.queryset.filter(user=self.request.user, task=self.entities.setTask.task, set=self.entities.setTask.set) + queryset = queryset.filter(user=self.request.user, task=self.entities.setTask.task, set=self.entities.setTask.set) else: - self.queryset = self.queryset.filter(user=self.request.user, task=self.entities.task, set=None) + queryset = queryset.filter(user=self.request.user, task=self.entities.task, set=None) offset = self.page_size * (self.page - 1) limit = self.page_size - self.context["solutions"] = self.queryset.order_by("-id")[offset:offset + limit] - self.context["count_pages"] = range(1, (len(self.queryset) - 1) // self.page_size + 2) + self.context["solutions"] = queryset.order_by("-id")[offset:offset + limit] + self.context["count_pages"] = range(1, (len(queryset) - 1) // self.page_size + 2) self.context["need_pagination"] = len(self.context["count_pages"]) > 1