feature/minio-integration #1

Merged
Ghasemi merged 3 commits from feature/minio-integration into master 2026-08-18 03:38:49 -04:00
2 changed files with 10 additions and 0 deletions
Showing only changes of commit 3748da1af7 - Show all commits

View file

@ -1,3 +1,4 @@
from drf_spectacular.utils import extend_schema_field
from rest_framework import serializers from rest_framework import serializers
from apps.core.media import presigned_media_url from apps.core.media import presigned_media_url
@ -13,6 +14,7 @@ class ProductCategorySerializer(serializers.ModelSerializer):
model = ProductCategory model = ProductCategory
fields = ('uuid', 'name', 'parent', 'icon', 'icon_url', 'order') fields = ('uuid', 'name', 'parent', 'icon', 'icon_url', 'order')
@extend_schema_field(serializers.URLField(allow_null=True))
def get_icon_url(self, obj): def get_icon_url(self, obj):
return presigned_media_url(obj.icon) return presigned_media_url(obj.icon)
@ -28,6 +30,7 @@ class ProductListSerializer(serializers.ModelSerializer):
'is_active', 'is_out_of_stock', 'is_active', 'is_out_of_stock',
) )
@extend_schema_field(serializers.URLField(allow_null=True))
def get_image_url(self, obj): def get_image_url(self, obj):
return presigned_media_url(obj.image) return presigned_media_url(obj.image)
@ -60,6 +63,7 @@ class SellerProductSerializer(serializers.ModelSerializer):
) )
read_only_fields = ('sold_count',) read_only_fields = ('sold_count',)
@extend_schema_field(serializers.URLField(allow_null=True))
def get_image_url(self, obj): def get_image_url(self, obj):
return presigned_media_url(obj.image) return presigned_media_url(obj.image)

View file

@ -1,4 +1,5 @@
from django.contrib.gis.geos import Point from django.contrib.gis.geos import Point
from drf_spectacular.utils import extend_schema_field
from rest_framework import serializers from rest_framework import serializers
from apps.core.media import presigned_media_url from apps.core.media import presigned_media_url
@ -15,6 +16,7 @@ class StoreCategorySerializer(serializers.ModelSerializer):
model = StoreCategory model = StoreCategory
fields = ('uuid', 'name', 'icon', 'icon_url', 'order') fields = ('uuid', 'name', 'icon', 'icon_url', 'order')
@extend_schema_field(serializers.URLField(allow_null=True))
def get_icon_url(self, obj): def get_icon_url(self, obj):
return presigned_media_url(obj.icon) return presigned_media_url(obj.icon)
@ -38,9 +40,11 @@ class StoreListSerializer(serializers.ModelSerializer):
'free_delivery_threshold', 'is_open', 'free_delivery_threshold', 'is_open',
) )
@extend_schema_field(serializers.URLField(allow_null=True))
def get_logo_url(self, obj): def get_logo_url(self, obj):
return presigned_media_url(obj.logo) return presigned_media_url(obj.logo)
@extend_schema_field(serializers.URLField(allow_null=True))
def get_cover_image_url(self, obj): def get_cover_image_url(self, obj):
return presigned_media_url(obj.cover_image) return presigned_media_url(obj.cover_image)
@ -117,9 +121,11 @@ class SellerStoreSerializer(serializers.ModelSerializer):
) )
read_only_fields = ('rating_avg', 'rating_count', 'status') read_only_fields = ('rating_avg', 'rating_count', 'status')
@extend_schema_field(serializers.URLField(allow_null=True))
def get_logo_url(self, obj): def get_logo_url(self, obj):
return presigned_media_url(obj.logo) return presigned_media_url(obj.logo)
@extend_schema_field(serializers.URLField(allow_null=True))
def get_cover_image_url(self, obj): def get_cover_image_url(self, obj):
return presigned_media_url(obj.cover_image) return presigned_media_url(obj.cover_image)