Files
swingmusic-extended/app/serializers/artist.py
T
2024-10-05 08:32:26 +03:00

38 lines
732 B
Python

from dataclasses import asdict
from app.models.artist import Artist
def serialize_for_card(artist: Artist):
try:
artist_dict = asdict(artist)
except TypeError:
return {}
props_to_remove = {
"is_favorite",
"trackcount",
"duration",
"albumcount",
"playcount",
"playduration",
"playcount",
"lastplayed",
"id",
"genres",
"genrehashes",
"extra",
"created_date",
"date",
"fav_userids",
}
for key in props_to_remove:
artist_dict.pop(key, None)
return artist_dict
def serialize_for_cards(artists: list[Artist]):
return [serialize_for_card(a) for a in artists]