From c3eafe7e72cb05097e43297827be9f9afb2557c1 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Sun, 19 May 2024 11:41:19 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=BC=96=E8=BE=91=E6=8A=BC=E9=A2=98?= =?UTF-8?q?=E5=8D=B7=E6=97=B6=E6=9B=B4=E6=96=B0=E9=A2=98=E7=9B=AE=E7=9A=84?= =?UTF-8?q?is=5Fdelete=E5=AD=97=E6=AE=B52?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test_server/examtest/views.py | 4 ++-- test_server/rbac/models.py | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/test_server/examtest/views.py b/test_server/examtest/views.py index 73e805b..29cfdce 100644 --- a/test_server/examtest/views.py +++ b/test_server/examtest/views.py @@ -639,7 +639,7 @@ class PaperViewSet(PageOrNot, ModelViewSet): instance = serializer.save() if 'questions' in data: questions = [] - Question.objects.filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False) + Question.objects.get_queryset(all=True).filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False) for i in data['questions']: question = {} question['question'] = i['id'] @@ -664,7 +664,7 @@ class PaperViewSet(PageOrNot, ModelViewSet): self.perform_update(serializer) if 'questions' in data: questions = [] - Question.objects.filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False) + Question.objects.get_queryset(all=True).filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False) for i in data['questions']: question = {} question['question'] = i['id'] diff --git a/test_server/rbac/models.py b/test_server/rbac/models.py index 92af2a8..a4bc604 100644 --- a/test_server/rbac/models.py +++ b/test_server/rbac/models.py @@ -32,14 +32,15 @@ class SoftDeletableManagerMixin(object): """ _queryset_class = SoftDeletableQuerySet - def get_queryset(self): + def get_queryset(self, all=False): """ Return queryset limited to not deleted entries. """ kwargs = {'model': self.model, 'using': self._db} if hasattr(self, '_hints'): kwargs['hints'] = self._hints - + if all: + return self._queryset_class(**kwargs) return self._queryset_class(**kwargs).filter(is_delete=False)