From c947a6dd64e5e7576fd731da92286d9abf42683b Mon Sep 17 00:00:00 2001 From: Nikhil <118773738+pablohashescobar@users.noreply.github.com> Date: Thu, 27 Jul 2023 17:30:00 +0530 Subject: [PATCH] fix: cycles n+1 (#1689) --- apiserver/plane/api/serializers/__init__.py | 2 +- apiserver/plane/api/serializers/cycle.py | 6 ++++++ apiserver/plane/api/views/cycle.py | 4 ++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apiserver/plane/api/serializers/__init__.py b/apiserver/plane/api/serializers/__init__.py index 2ff210f98..604175dba 100644 --- a/apiserver/plane/api/serializers/__init__.py +++ b/apiserver/plane/api/serializers/__init__.py @@ -25,7 +25,7 @@ from .project import ( ) from .state import StateSerializer, StateLiteSerializer from .view import IssueViewSerializer, IssueViewFavoriteSerializer -from .cycle import CycleSerializer, CycleIssueSerializer, CycleFavoriteSerializer +from .cycle import CycleSerializer, CycleIssueSerializer, CycleFavoriteSerializer, CycleWriteSerializer from .asset import FileAssetSerializer from .issue import ( IssueCreateSerializer, diff --git a/apiserver/plane/api/serializers/cycle.py b/apiserver/plane/api/serializers/cycle.py index 760f42dcc..5b7bb7598 100644 --- a/apiserver/plane/api/serializers/cycle.py +++ b/apiserver/plane/api/serializers/cycle.py @@ -12,6 +12,12 @@ from .workspace import WorkspaceLiteSerializer from .project import ProjectLiteSerializer from plane.db.models import Cycle, CycleIssue, CycleFavorite +class CycleWriteSerializer(BaseSerializer): + + class Meta: + model = Cycle + fields = "__all__" + class CycleSerializer(BaseSerializer): owned_by = UserLiteSerializer(read_only=True) diff --git a/apiserver/plane/api/views/cycle.py b/apiserver/plane/api/views/cycle.py index d78333528..268485b6e 100644 --- a/apiserver/plane/api/views/cycle.py +++ b/apiserver/plane/api/views/cycle.py @@ -31,6 +31,7 @@ from plane.api.serializers import ( CycleIssueSerializer, CycleFavoriteSerializer, IssueStateSerializer, + CycleWriteSerializer, ) from plane.api.permissions import ProjectEntityPermission from plane.db.models import ( @@ -338,7 +339,7 @@ class CycleViewSet(BaseViewSet): status=status.HTTP_400_BAD_REQUEST, ) - serializer = CycleSerializer(cycle, data=request.data, partial=True) + serializer = CycleWriteSerializer(cycle, data=request.data, partial=True) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_200_OK) @@ -691,7 +692,6 @@ class CycleDateCheckEndpoint(BaseAPIView): return Response( { "error": "You have a cycle already on the given dates, if you want to create your draft cycle you can do that by removing dates", - "cycles": CycleSerializer(cycles, many=True).data, "status": False, } )