diff --git a/server/proj/audio/views.py b/server/proj/audio/views.py index 58132c7..d2b2e9e 100644 --- a/server/proj/audio/views.py +++ b/server/proj/audio/views.py @@ -32,6 +32,18 @@ class SongViewSet(GenericViewSet): 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('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=['post'], schema=SongSchema()) def add_favorite(self, request): song = get_object_or_404(Song, azura_id=request.data.get('azura_id'))