import os from rest_framework import serializers from .models import Artista, Album, Song class ArtistaSerializer(serializers.ModelSerializer): class Meta: model = Artista fields = '__all__' # Incluir todos los campos del modelo def to_representation(self, instance): ret = super().to_representation(instance) ret['foto'] = "artistas/" + os.path.basename(ret['foto']) return ret class AlbumSerializer(serializers.ModelSerializer): artista_nombre = serializers.CharField(source='artist.nombre', read_only=True) class Meta: model = Album fields = ['name', 'year', 'cover_image', 'artista_nombre'] def to_representation(self, instance): ret = super().to_representation(instance) ret['cover_image'] = "cover_image/" + os.path.basename(ret['cover_image']) return ret class CancionSerializer(serializers.ModelSerializer): artista_nombre = serializers.CharField(source='artist.nombre', read_only=True) album_nombre = serializers.CharField(source='album.name', read_only=True) class Meta: model = Song fields = ['title', 'year', 'lyrics', 'pista', 'artista_nombre', 'album_nombre']