diff --git a/apiserver/plane/app/views/page/base.py b/apiserver/plane/app/views/page/base.py index 7dd3349181..4eccd2a1a0 100644 --- a/apiserver/plane/app/views/page/base.py +++ b/apiserver/plane/app/views/page/base.py @@ -374,6 +374,12 @@ class PageViewSet(BaseViewSet): entity_identifier=pk, entity_type="page", ).delete() + # Delete the deploy board + DeployBoard.objects.get( + entity_name="page", + entity_identifier=pk, + workspace__slug=slug, + ).delete() return Response(status=status.HTTP_204_NO_CONTENT) diff --git a/apiserver/plane/app/views/project/base.py b/apiserver/plane/app/views/project/base.py index 22181dacff..9377dffe95 100644 --- a/apiserver/plane/app/views/project/base.py +++ b/apiserver/plane/app/views/project/base.py @@ -456,6 +456,16 @@ class ProjectViewSet(BaseViewSet): status=status.HTTP_410_GONE, ) + def destroy(self, request, slug, pk): + project = Project.objects.get(pk=pk) + project.delete() + DeployBoard.objects.get( + entity_name="project", + entity_identifier=pk, + workspace__slug=slug, + ).delete() + return Response(status=status.HTTP_204_NO_CONTENT) + class ProjectArchiveUnarchiveEndpoint(BaseAPIView): diff --git a/apiserver/plane/app/views/view/base.py b/apiserver/plane/app/views/view/base.py index 3e829f6e89..ba337017d0 100644 --- a/apiserver/plane/app/views/view/base.py +++ b/apiserver/plane/app/views/view/base.py @@ -460,6 +460,13 @@ class IssueViewViewSet(BaseViewSet): entity_identifier=pk, entity_type="view", ).delete() + # Delete the view from the deploy board + DeployBoard.objects.filter( + entity_name="view", + entity_identifier=pk, + project_id=project_id, + workspace__slug=slug, + ).delete() else: return Response( {"error": "Only admin or owner can delete the view"}, diff --git a/apiserver/plane/ee/views/app/page/workspace.py b/apiserver/plane/ee/views/app/page/workspace.py index dff30869c2..29a9380968 100644 --- a/apiserver/plane/ee/views/app/page/workspace.py +++ b/apiserver/plane/ee/views/app/page/workspace.py @@ -336,6 +336,12 @@ class WorkspacePageViewSet(BaseViewSet): ) page.delete() + # Delete the deploy board + DeployBoard.objects.get( + entity_name="page", + entity_identifier=pk, + workspace__slug=slug, + ).delete() return Response(status=status.HTTP_204_NO_CONTENT)