diff --git a/apps/establishment/serializers/common.py b/apps/establishment/serializers/common.py index bcb2d0b6..0c40efbb 100644 --- a/apps/establishment/serializers/common.py +++ b/apps/establishment/serializers/common.py @@ -13,7 +13,7 @@ from location.serializers import ( AddressBaseSerializer, AddressDetailSerializer, CityBaseSerializer, CityShortSerializer, EstablishmentWineOriginBaseSerializer, EstablishmentWineRegionBaseSerializer, -) + AddressMobileDetailSerializer) from main.serializers import AwardSerializer, CurrencySerializer from review.serializers import ReviewShortSerializer, ReviewBaseSerializer from tag.serializers import TagBaseSerializer @@ -501,6 +501,7 @@ class MobileEstablishmentDetailSerializer(EstablishmentDetailSerializer): """Serializer for Establishment model for mobiles.""" last_comment = comment_serializers.CommentBaseSerializer(allow_null=True) + address = AddressMobileDetailSerializer(read_only=True) class Meta(EstablishmentDetailSerializer.Meta): """Meta class.""" diff --git a/apps/location/serializers/common.py b/apps/location/serializers/common.py index 4293485d..b4ea9c5f 100644 --- a/apps/location/serializers/common.py +++ b/apps/location/serializers/common.py @@ -141,6 +141,19 @@ class CityBaseSerializer(serializers.ModelSerializer): } +class CityMobileSerializer(CityBaseSerializer): + name = serializers.SerializerMethodField() + + class Meta(CityBaseSerializer.Meta): + fields = CityBaseSerializer.Meta.fields + [ + 'name' + ] + + def get_name(self, obj: models.City) -> str: + if hasattr(obj, 'name_translated'): + return obj.name_translated + + class CityDetailSerializer(CityBaseSerializer): """Serializer for detail view.""" image = ImageBaseSerializer(source='crop_image', read_only=True) @@ -245,6 +258,10 @@ class AddressDetailSerializer(AddressBaseSerializer): ) +class AddressMobileDetailSerializer(AddressDetailSerializer): + city = CityMobileSerializer(read_only=True) + + class WineRegionBaseSerializer(serializers.ModelSerializer): """Wine region serializer.""" country = CountrySerializer()