gault-millau/apps/location/transfer_data.py
littlewolf abe8eae655 Tmp
2019-10-25 12:27:38 +03:00

39 lines
1.2 KiB
Python

from transfer.serializers.location import CountrySerializer, RegionSerializer
from transfer.models import Cities
from pprint import pprint
def transfer_countries():
queryset = Cities.objects.exclude(country_code_2__isnull=True).values_list("country_code_2", flat=True).distinct()
serialized_data = CountrySerializer(data=list(queryset.values()), many=True)
if serialized_data.is_valid():
serialized_data.save()
else:
pprint(f"Country serializer errors: {serialized_data.errors}")
def transfer_regions():
regions_without_subregion_queryset = Cities.objects.\
exclude(subregion_code__isnull=True).\
exclude(region_code__isnull=True).\
exclude(country_code_2__isnull=True).\
values('region_code', 'country_code_2', 'subregion_code').distinct()
serialized_without_subregion = RegionSerializer(data=list(regions_without_subregion_queryset.values()), many=True)
if serialized_without_subregion.is_valid():
serialized_without_subregion.save()
else:
pprint(f"Parent regions serializer errors: {serialized_without_subregion.errors}")
data_types = {
"dictionaries": [
transfer_countries,
],
"tmp": [
transfer_regions
]
}