Use model serializer
This commit is contained in:
parent
011e14941a
commit
b0be04109b
|
@ -1,5 +1,4 @@
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
import uuid
|
|
||||||
|
|
||||||
from django import urls
|
from django import urls
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
@ -864,21 +863,28 @@ class V2_BaseArtistSerializer(serializers.ModelSerializer):
|
||||||
All other serializers that reference an artist should use this serializer.
|
All other serializers that reference an artist should use this serializer.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
guid = models.UUIDField(default=uuid.uuid4, editable=False)
|
class Meta:
|
||||||
fid = serializers.URLField()
|
model = models.Artist
|
||||||
mbid = serializers.UUIDField()
|
fields = [
|
||||||
name = serializers.CharField()
|
"guid",
|
||||||
contentCategory = serializers.CharField()
|
"mbid",
|
||||||
local = serializers.BooleanField()
|
"name",
|
||||||
cover = CoverField(allow_null=True, required=False)
|
"contentCategory",
|
||||||
|
"cover",
|
||||||
|
"tags",
|
||||||
|
]
|
||||||
|
|
||||||
|
contentCategory = serializers.SerializerMethodField()
|
||||||
|
cover = serializers.SerializerMethodField()
|
||||||
tags = serializers.SerializerMethodField()
|
tags = serializers.SerializerMethodField()
|
||||||
|
|
||||||
# Fetch all tags associated with the artist.
|
def get_contentCategory(self, obj):
|
||||||
|
return obj.content_category
|
||||||
|
|
||||||
|
def get_cover(self, obj):
|
||||||
|
return obj.attachment_cover
|
||||||
|
|
||||||
@extend_schema_field({"type": "array", "items": {"type": "string"}})
|
@extend_schema_field({"type": "array", "items": {"type": "string"}})
|
||||||
def get_tags(self, obj):
|
def get_tags(self, obj):
|
||||||
tagged_items = getattr(obj, "_prefetched_tagged_items", [])
|
tagged_items = getattr(obj, "_prefetched_tagged_items", [])
|
||||||
return [ti.tag.name for ti in tagged_items]
|
return [ti.tag.name for ti in tagged_items]
|
||||||
|
|
||||||
def get_local(artist, upload) -> bool:
|
|
||||||
return federation_utils.is_local(artist.fid)
|
|
||||||
|
|
Loading…
Reference in New Issue