diff --git a/server/proj/audio/serializers.py b/server/proj/audio/serializers.py index ee54630..50885eb 100644 --- a/server/proj/audio/serializers.py +++ b/server/proj/audio/serializers.py @@ -13,7 +13,18 @@ class FavoriteSongSerializer(serializers.ModelSerializer): def to_representation(self, instance): rep = super().to_representation(instance) - rep["songs"] = SongSerializer( - instance.song, many=True).data + rep["song"] = SongSerializer( + instance.song).data return rep +class OnlyFavoriteSongSerializer(serializers.ModelSerializer): + class Meta: + model = FavoriteSong + fields = ('song') + + def to_representation(self, instance): + rep = super().to_representation(instance) + rep["song"] = SongSerializer( + instance.song).data + return rep + \ No newline at end of file diff --git a/server/proj/audio/views.py b/server/proj/audio/views.py index a9c23bb..aab79b1 100644 --- a/server/proj/audio/views.py +++ b/server/proj/audio/views.py @@ -9,7 +9,7 @@ import requests from .schemas import SongSchema, DeleteSongSchema from .models import Song, FavoriteSong -from .serializers import SongSerializer, FavoriteSongSerializer +from .serializers import SongSerializer, FavoriteSongSerializer, OnlyFavoriteSongSerializer class SongViewSet(ViewSet): permission_classes_by_action = { @@ -20,7 +20,7 @@ class SongViewSet(ViewSet): def list(self, request): user_pk = request.user.pk queryset = get_list_or_404(FavoriteSong, user=user_pk) - serializer = FavoriteSongSerializer(queryset, many=True) + serializer = OnlyFavoriteSongSerializer(queryset, many=True) return Response(serializer.data) def retrieve(self, request, pk=None):