From d96540134ee47b02308d6f8c83dbf11c1a03398f Mon Sep 17 00:00:00 2001 From: Mike0001-droid Date: Mon, 10 Jun 2024 17:51:37 +0500 Subject: [PATCH] =?UTF-8?q?=D0=B2=D0=B5=D1=80=D0=BD=D1=83=D0=BB=20=D0=BC?= =?UTF-8?q?=D0=B5=D1=82=D0=BE=D0=B4=20=D0=BE=D0=B1=D1=80=D0=B0=D1=82=D0=BD?= =?UTF-8?q?=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/proj/audio/views.py | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/server/proj/audio/views.py b/server/proj/audio/views.py index a1cad1e..acf8f1b 100644 --- a/server/proj/audio/views.py +++ b/server/proj/audio/views.py @@ -23,26 +23,21 @@ class SongViewSet(GenericViewSet): serializer = SongSerializer(songs, many=True) return Response(serializer.data) - def retrieve(self, request, pk=None): + @action( + detail=False, + methods=['get'], + url_path='check_is_favorite/(?P[a-zA-Z0-9_]+)', + url_name='check_is_favorite', + ) + def check_is_favorite(self, request, azura_id): try: - song_obj = Song.objects.get(azura_id=pk) + song_obj = Song.objects.get(azura_id=azura_id) favorite_songs = FavoriteSong.objects.get(user=request.user, song=song_obj) except ObjectDoesNotExist: return Response({"error": 'Объекта не существует'}, status=status.HTTP_404_NOT_FOUND) serializer = FavoriteSongSerializer(favorite_songs) return Response(serializer.data) - - - @action(detail=False, methods=['GET'], schema=DeleteSongSchema()) - def check_is_favorite(self, request): - try: - song_obj = Song.objects.get(azura_id=request.data.get('song_id')) - favorite_songs = FavoriteSong.objects.get(user=request.user, song=song_obj) - except ObjectDoesNotExist: - return Response({"error": 'Объекта не существует'}, status=status.HTTP_404_NOT_FOUND) - serializer = FavoriteSongSerializer(favorite_songs) - return Response(serializer.data) - + @action(detail=False, methods=['post'], schema=SongSchema()) def add_favorite(self, request):