From b1195c08e719de82fb983543fab6837b73bb3e81 Mon Sep 17 00:00:00 2001 From: Mike0001-droid Date: Fri, 7 Jun 2024 17:33:04 +0500 Subject: [PATCH] =?UTF-8?q?=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=BA=D1=82=D0=B0=20?= =?UTF-8?q?=D0=BC=D1=83=D0=B7=D1=8B=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/proj/audio/serializers.py | 7 +++++++ server/proj/audio/views.py | 13 +++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/server/proj/audio/serializers.py b/server/proj/audio/serializers.py index 7b52368..b9aa3fa 100644 --- a/server/proj/audio/serializers.py +++ b/server/proj/audio/serializers.py @@ -10,3 +10,10 @@ class FavoriteSongSerializer(serializers.ModelSerializer): class Meta: model = FavoriteSong fields = ('id', 'song', 'user') + + def to_representation(self, instance): + rep = super().to_representation(instance) + rep["song"] = SongSerializer( + instance.song).data + return rep + diff --git a/server/proj/audio/views.py b/server/proj/audio/views.py index a42cb9b..fc0d698 100644 --- a/server/proj/audio/views.py +++ b/server/proj/audio/views.py @@ -44,9 +44,18 @@ class SongViewSet(ViewSet): if serializer.is_valid(): serializer.save() - return Response(serializer.data, status=status.HTTP_201_CREATED) + data = { + "song": song[0].id, + "user": request.user.pk + } + + serializer_1 = FavoriteSongSerializer(data=data) + if serializer_1.is_valid(): + serializer_1.save() + return Response(serializer_1.data, status=status.HTTP_201_CREATED) else: - return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + return Response(serializer_1.errors, status=status.HTTP_400_BAD_REQUEST) + @action(detail=False, methods=['post'], schema=DeleteSongSchema())