diff --git a/server/proj/audio/views.py b/server/proj/audio/views.py index 8d04bd2..c5e7282 100644 --- a/server/proj/audio/views.py +++ b/server/proj/audio/views.py @@ -70,6 +70,19 @@ class PlayListViewSet(GenericViewSet): {'detail': 'Объекта не существует', 'error': {'PlayList': 'Объекта не существует'}}, status=status.HTTP_404_NOT_FOUND) + @action(detail=False, methods=['post'], schema=PlayListSchema()) + def delete_song_with_playlist(self, request): + try: + song = Song.objects.get(azura_id=request.data.get('azura_id')) + item = PlayList.objects.get(user=request.user, pk=request.data.get('playlist_id')) + item.song.remove(song) + return Response({'detail': 'Объект удалён'}, status=status.HTTP_200_OK) + except ObjectDoesNotExist: + return Response( + {'detail': 'Объекта не существует', 'error': {'PlayList': 'Объекта не существует'}}, + status=status.HTTP_404_NOT_FOUND) + + @action(detail=False, methods=['post'], schema=PlayListSchema()) def add_to_playlist(self, request): song = None