From 8d022d54ed8cfea4f8fb111ce7f3f83ec51e098f Mon Sep 17 00:00:00 2001 From: bmh7190 Date: Mon, 3 Mar 2025 18:42:41 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=84=B8=EB=B6=80=20=EC=9D=BC=EC=A0=95?= =?UTF-8?q?=20=EC=82=AD=EC=A0=9C=EC=8B=9C=20=EC=88=9C=EC=84=9C=20=EC=97=85?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- makourse/course/views.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/makourse/course/views.py b/makourse/course/views.py index c8ed409..ef99632 100644 --- a/makourse/course/views.py +++ b/makourse/course/views.py @@ -145,11 +145,20 @@ def patch(self, request, pk, *args, **kwargs): operation_summary="303 스케줄 속 각 일정 삭제하기", responses={204: "ScheduleEntry deleted successfully."} ) + def delete(self, request, pk, *args, **kwargs): schedule_entry = get_object_or_404(ScheduleEntry, pk=pk) - # ScheduleEntry 객체 가져오기 - + schedule = schedule_entry.schedule # 해당 일정이 속한 스케줄 가져오기 + + # 해당 일정 삭제 schedule_entry.delete() + + # 남아 있는 일정들의 num 재정렬 + remaining_entries = ScheduleEntry.objects.filter(schedule=schedule).order_by("num") + for index, entry in enumerate(remaining_entries, start=0): + entry.num = index # 1부터 다시 매기기 + entry.save() + return Response({"message": "ScheduleEntry deleted successfully."}, status=status.HTTP_204_NO_CONTENT)