From 9572f025976e364cd37621e045cb0adfb42a2a00 Mon Sep 17 00:00:00 2001 From: NarayanBavisetti Date: Mon, 14 Oct 2024 19:34:03 +0530 Subject: [PATCH 1/3] chore: changed the cascading logic for soft delete --- apiserver/plane/app/views/workspace/draft.py | 2 +- apiserver/plane/bgtasks/deletion_task.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apiserver/plane/app/views/workspace/draft.py b/apiserver/plane/app/views/workspace/draft.py index d81dd5a5032..cec9296f791 100644 --- a/apiserver/plane/app/views/workspace/draft.py +++ b/apiserver/plane/app/views/workspace/draft.py @@ -279,7 +279,7 @@ def create_draft_to_issue(self, request, slug, draft_id): { "updated_cycle_issues": None, "created_cycle_issues": serializers.serialize( - "json", created_records + "json", [created_records] ), } ), diff --git a/apiserver/plane/bgtasks/deletion_task.py b/apiserver/plane/bgtasks/deletion_task.py index 35d72812da6..f38d74c4bb3 100644 --- a/apiserver/plane/bgtasks/deletion_task.py +++ b/apiserver/plane/bgtasks/deletion_task.py @@ -21,8 +21,8 @@ def soft_delete_related_objects( try: # Check if the field has CASCADE on delete if ( - hasattr(field.remote_field, "on_delete") - and field.remote_field.on_delete == models.CASCADE + not hasattr(field.remote_field, "on_delete") + or field.remote_field.on_delete == "CASCADE" ): if field.one_to_many: related_objects = getattr(instance, field.name).all() From 765240af130bbfd2df35fba9827edf5125169ce7 Mon Sep 17 00:00:00 2001 From: NarayanBavisetti Date: Mon, 14 Oct 2024 19:37:54 +0530 Subject: [PATCH 2/3] chore: changed the delete key --- apiserver/plane/bgtasks/deletion_task.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apiserver/plane/bgtasks/deletion_task.py b/apiserver/plane/bgtasks/deletion_task.py index f38d74c4bb3..b0b2a6eb263 100644 --- a/apiserver/plane/bgtasks/deletion_task.py +++ b/apiserver/plane/bgtasks/deletion_task.py @@ -22,7 +22,7 @@ def soft_delete_related_objects( # Check if the field has CASCADE on delete if ( not hasattr(field.remote_field, "on_delete") - or field.remote_field.on_delete == "CASCADE" + or field.remote_field.on_delete == models.CASCADE ): if field.one_to_many: related_objects = getattr(instance, field.name).all() From 407d64df57de8465e24370aa89e649d3b99e2a33 Mon Sep 17 00:00:00 2001 From: NarayanBavisetti Date: Mon, 14 Oct 2024 19:43:37 +0530 Subject: [PATCH 3/3] chore: added the key on delete in project base model --- apiserver/plane/db/models/project.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apiserver/plane/db/models/project.py b/apiserver/plane/db/models/project.py index f970b121c85..a44c84bc488 100644 --- a/apiserver/plane/db/models/project.py +++ b/apiserver/plane/db/models/project.py @@ -181,7 +181,7 @@ class ProjectBaseModel(BaseModel): Project, on_delete=models.CASCADE, related_name="project_%(class)s" ) workspace = models.ForeignKey( - "db.Workspace", models.CASCADE, related_name="workspace_%(class)s" + "db.Workspace", on_delete=models.CASCADE, related_name="workspace_%(class)s" ) class Meta: