From f8669ad3cac9213606c4a7ce3732c259dfd34d21 Mon Sep 17 00:00:00 2001 From: littlewolf Date: Tue, 5 Nov 2019 14:14:38 +0300 Subject: [PATCH] Add city create --- apps/location/serializers/common.py | 13 +++++++++++++ apps/location/urls/common.py | 3 ++- apps/location/views/common.py | 4 ++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/apps/location/serializers/common.py b/apps/location/serializers/common.py index 2a70c3b8..38692d5f 100644 --- a/apps/location/serializers/common.py +++ b/apps/location/serializers/common.py @@ -84,6 +84,19 @@ class CitySerializer(serializers.ModelSerializer): ] +class CityCreateSerializer(serializers.ModelSerializer): + """City create serializer""" + class Meta: + model = models.City + fields = [ + 'name', + 'country', + 'postal_code', + 'region' + 'is_island' + ] + + class AddressBaseSerializer(serializers.ModelSerializer): """Serializer for address obj in related objects.""" diff --git a/apps/location/urls/common.py b/apps/location/urls/common.py index 3b73f607..8c91ca58 100644 --- a/apps/location/urls/common.py +++ b/apps/location/urls/common.py @@ -10,7 +10,8 @@ urlpatterns = [ path('addresses//', views.AddressRetrieveView.as_view(), name='address-retrieve'), path('cities/', views.CityListView.as_view(), name='city-list'), - path('cities//', views.CityRetrieveView.as_view(), name='city-retrieve'), + path('cities//', views.CityRUDView.as_view(), name='city-detail'), + path('cities/create/', views.CityCreateView.as_view(), name='city-create'), path('countries/', views.CountryListView.as_view(), name='country-list'), path('countries//', views.CountryRetrieveView.as_view(), name='country-retrieve'), diff --git a/apps/location/views/common.py b/apps/location/views/common.py index b4a3f1cb..dc00853d 100644 --- a/apps/location/views/common.py +++ b/apps/location/views/common.py @@ -73,6 +73,10 @@ class RegionUpdateView(RegionViewMixin, generics.UpdateAPIView): # City class CityCreateView(CityViewMixin, generics.CreateAPIView): """Create view for model City""" + serializer_class = serializers.CityCreateSerializer + + +class CityRUDView(generics.RetrieveUpdateDestroyAPIView): serializer_class = serializers.CitySerializer