Set: PostPreviewSerialiser file urls to new serve_file api
This commit is contained in:
parent
febb9ce668
commit
643b7491d6
1 changed files with 10 additions and 2 deletions
|
@ -1,6 +1,7 @@
|
||||||
from typing import Dict, List, Optional
|
from typing import Dict, List, Optional
|
||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
|
|
||||||
|
from django.urls import reverse
|
||||||
from django.utils.timezone import localtime
|
from django.utils.timezone import localtime
|
||||||
|
|
||||||
from apps.archive.models import PostModel
|
from apps.archive.models import PostModel
|
||||||
|
@ -45,7 +46,11 @@ class PostPreviewSerializer(serializers.ModelSerializer):
|
||||||
return [{"slug": i.slug, "name": i.name} for i in obj.category.all()]
|
return [{"slug": i.slug, "name": i.name} for i in obj.category.all()]
|
||||||
|
|
||||||
def get_creator(self, obj: PostModel) -> Dict[str, Optional[str]]:
|
def get_creator(self, obj: PostModel) -> Dict[str, Optional[str]]:
|
||||||
avatar_url = obj.creator.avatar.file.url if obj.creator.avatar else None
|
avatar_url = (
|
||||||
|
reverse("serve_file", args=[obj.creator.avatar.hash_blake3])
|
||||||
|
if obj.creator.avatar
|
||||||
|
else None
|
||||||
|
)
|
||||||
return {
|
return {
|
||||||
"slug": obj.creator.slug,
|
"slug": obj.creator.slug,
|
||||||
"name": obj.creator.name,
|
"name": obj.creator.name,
|
||||||
|
@ -63,7 +68,10 @@ class PostPreviewSerializer(serializers.ModelSerializer):
|
||||||
data = []
|
data = []
|
||||||
for i in obj.files.all():
|
for i in obj.files.all():
|
||||||
data.append(
|
data.append(
|
||||||
{"type": i.file_type, "mimetype": i.mimetype, "src": i.file.url}
|
{
|
||||||
|
"type": i.file_type,
|
||||||
|
"src": reverse("serve_file", args=[i.hash_blake3]),
|
||||||
|
}
|
||||||
)
|
)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue