display from_city and to_city on ui
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from rest_framework import serializers
|
||||
from routes.models import Route, Country
|
||||
from routes.models import Route, Country, City
|
||||
from api.main.serializers import RouteSerializer
|
||||
|
||||
class SearchRouteSerializer(RouteSerializer):
|
||||
@@ -7,8 +7,10 @@ class SearchRouteSerializer(RouteSerializer):
|
||||
username = serializers.SerializerMethodField()
|
||||
owner_type = serializers.CharField()
|
||||
from_city_name = serializers.SerializerMethodField('get_start_point')
|
||||
from_city_russian_name = serializers.SerializerMethodField()
|
||||
from_country_name = serializers.SerializerMethodField('get_country_from')
|
||||
to_city_name = serializers.SerializerMethodField('get_end_point')
|
||||
to_city_russian_name = serializers.SerializerMethodField()
|
||||
to_country_name = serializers.SerializerMethodField('get_country_to')
|
||||
formatted_cargo_type = serializers.SerializerMethodField('get_cargo_type')
|
||||
formatted_transport = serializers.SerializerMethodField('get_moving_type')
|
||||
@@ -23,11 +25,12 @@ class SearchRouteSerializer(RouteSerializer):
|
||||
class Meta:
|
||||
model = Route
|
||||
fields = (
|
||||
'id', 'username', 'owner_type', 'from_city_name', 'from_country_name',
|
||||
'to_city_name', 'to_country_name', 'formatted_cargo_type',
|
||||
'formatted_transport', 'type_transport', 'userImg', 'comment',
|
||||
'formatted_departure', 'formatted_arrival', 'country_from_icon',
|
||||
'country_to_icon'
|
||||
'id', 'username', 'owner_type',
|
||||
'from_city_name', 'from_city_russian_name', 'from_country_name',
|
||||
'to_city_name', 'to_city_russian_name', 'to_country_name',
|
||||
'formatted_cargo_type', 'formatted_transport', 'type_transport',
|
||||
'userImg', 'comment', 'formatted_departure', 'formatted_arrival',
|
||||
'country_from_icon', 'country_to_icon'
|
||||
)
|
||||
|
||||
def get_username(self, obj):
|
||||
@@ -79,3 +82,17 @@ class SearchRouteSerializer(RouteSerializer):
|
||||
|
||||
def get_moving_type(self, obj):
|
||||
return self.get_formatted_transport(obj)
|
||||
|
||||
def get_from_city_russian_name(self, obj):
|
||||
try:
|
||||
city = City.objects.get(id=obj.from_city_id)
|
||||
return city.russian_name or city.name
|
||||
except City.DoesNotExist:
|
||||
return None
|
||||
|
||||
def get_to_city_russian_name(self, obj):
|
||||
try:
|
||||
city = City.objects.get(id=obj.to_city_id)
|
||||
return city.russian_name or city.name
|
||||
except City.DoesNotExist:
|
||||
return None
|
||||
|
||||
Reference in New Issue
Block a user