From e0d09486c2f8398e8464323a70c39fc153d1ccc6 Mon Sep 17 00:00:00 2001 From: Kuroshini Date: Thu, 26 Sep 2019 17:40:35 +0300 Subject: [PATCH] Revert "address coordinates in get api queries" This reverts commit f21b400 --- apps/location/models.py | 4 ---- apps/location/serializers/common.py | 20 ++++++++++---------- apps/search_indexes/serializers.py | 2 +- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/apps/location/models.py b/apps/location/models.py index b0aa298c..7084385f 100644 --- a/apps/location/models.py +++ b/apps/location/models.py @@ -104,10 +104,6 @@ class Address(models.Model): def longitude(self): return self.coordinates.x - @property - def location(self): - return self.location_field_indexing - @property def location_field_indexing(self): return {'lat': self.latitude, diff --git a/apps/location/serializers/common.py b/apps/location/serializers/common.py index 0b8ac7ed..555cf499 100644 --- a/apps/location/serializers/common.py +++ b/apps/location/serializers/common.py @@ -90,9 +90,8 @@ class AddressSerializer(serializers.ModelSerializer): source='city', queryset=models.City.objects.all()) city = CitySerializer(read_only=True) - geo_lon = serializers.FloatField(allow_null=True, write_only=True) - geo_lat = serializers.FloatField(allow_null=True, write_only=True) - location = serializers.ReadOnlyField() + geo_lon = serializers.FloatField(allow_null=True) + geo_lat = serializers.FloatField(allow_null=True) class Meta: model = models.Address @@ -105,8 +104,7 @@ class AddressSerializer(serializers.ModelSerializer): 'number', 'postal_code', 'geo_lon', - 'geo_lat', - 'location', + 'geo_lat' ] def validate(self, attrs): @@ -121,10 +119,12 @@ class AddressSerializer(serializers.ModelSerializer): def to_representation(self, instance): """Override to_representation method""" - if not instance.coordinates or not isinstance(instance.coordinates, Point): - setattr(instance, 'location', { - 'lat': float(0), - 'lon': float(0), - }) + if instance.coordinates and isinstance(instance.coordinates, Point): + # Point(longitude, latitude) + setattr(instance, 'geo_lat', instance.coordinates.x) + setattr(instance, 'geo_lon', instance.coordinates.y) + else: + setattr(instance, 'geo_lat', float(0)) + setattr(instance, 'geo_lon', float(0)) return super().to_representation(instance) diff --git a/apps/search_indexes/serializers.py b/apps/search_indexes/serializers.py index 73652ef6..598b60bf 100644 --- a/apps/search_indexes/serializers.py +++ b/apps/search_indexes/serializers.py @@ -54,7 +54,7 @@ class EstablishmentDocumentSerializer(DocumentSerializer): fields = ( 'id', 'name', - # 'description', + 'description', 'public_mark', 'toque_number', 'price_level',