Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -19,6 +19,7 @@ class Admin_City(Admin_Trans_BaseModel):
|
|||||||
'enable', 'area_id', 'parsing_finished_DT',
|
'enable', 'area_id', 'parsing_finished_DT',
|
||||||
'order', 'modifiedDT', 'createDT']
|
'order', 'modifiedDT', 'createDT']
|
||||||
search_fields = ['id', 'name_en', 'name_ru', 'country__name']
|
search_fields = ['id', 'name_en', 'name_ru', 'country__name']
|
||||||
|
list_filter = ['country']
|
||||||
admin.site.register(City, Admin_City)
|
admin.site.register(City, Admin_City)
|
||||||
|
|
||||||
class Admin_Airport(Admin_Trans_BaseModel):
|
class Admin_Airport(Admin_Trans_BaseModel):
|
||||||
@@ -29,4 +30,5 @@ class Admin_Airport(Admin_Trans_BaseModel):
|
|||||||
'enable', 'area_id', 'parsing_finished_DT',
|
'enable', 'area_id', 'parsing_finished_DT',
|
||||||
'order', 'modifiedDT', 'createDT']
|
'order', 'modifiedDT', 'createDT']
|
||||||
search_fields = ['id', 'name_en', 'name_ru', 'city__name', 'city__country__name', 'iata_code', 'icao_code', 'international_name']
|
search_fields = ['id', 'name_en', 'name_ru', 'city__name', 'city__country__name', 'iata_code', 'icao_code', 'international_name']
|
||||||
|
list_filter = ['city__country']
|
||||||
admin.site.register(Airport, Admin_Airport)
|
admin.site.register(Airport, Admin_Airport)
|
||||||
@@ -178,8 +178,6 @@ def parse_data():
|
|||||||
kwargs = {}
|
kwargs = {}
|
||||||
if city_Dict['name:en']:
|
if city_Dict['name:en']:
|
||||||
kwargs.update({'name_en': city_Dict['name:en']})
|
kwargs.update({'name_en': city_Dict['name:en']})
|
||||||
if city_Dict['name:ru']:
|
|
||||||
kwargs.update({'name_ru': city_Dict['name:ru']})
|
|
||||||
|
|
||||||
if country:
|
if country:
|
||||||
kwargs.update({'country': country})
|
kwargs.update({'country': country})
|
||||||
@@ -189,27 +187,36 @@ def parse_data():
|
|||||||
except City.DoesNotExist:
|
except City.DoesNotExist:
|
||||||
print(f' - {city_Dict["name:en"]} не найдена в БД > добавляем')
|
print(f' - {city_Dict["name:en"]} не найдена в БД > добавляем')
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f'error = {str(e)}')
|
cities = City.objects.filter(**kwargs)
|
||||||
|
if cities:
|
||||||
|
city = cities[0]
|
||||||
|
cities.exclude(id=city.id).delete()
|
||||||
|
else:
|
||||||
|
print(f'error = {str(e)}')
|
||||||
|
|
||||||
|
# собираем данные
|
||||||
|
city_kwargs = {
|
||||||
|
'country': country,
|
||||||
|
|
||||||
|
# 'name_ru': city_Dict['name:ru'],
|
||||||
|
# 'name_en': city_Dict['name:en'],
|
||||||
|
|
||||||
|
'geo_lat': str(city_Dict['@lat']),
|
||||||
|
'geo_lon': str(city_Dict['@lon']),
|
||||||
|
}
|
||||||
|
|
||||||
|
if city_Dict['name:ru']:
|
||||||
|
kwargs.update({'name_ru': city_Dict['name:ru']})
|
||||||
|
|
||||||
|
city_kwargs.update(kwargs)
|
||||||
|
|
||||||
|
if 'area_id' in city_Dict:
|
||||||
|
city_kwargs.update({'area_id': city_Dict['area_id']})
|
||||||
|
|
||||||
if not city:
|
if not city:
|
||||||
|
|
||||||
city_kwargs = {
|
|
||||||
'country': country,
|
|
||||||
|
|
||||||
# 'name_ru': city_Dict['name:ru'],
|
|
||||||
# 'name_en': city_Dict['name:en'],
|
|
||||||
|
|
||||||
'geo_lat': str(city_Dict['@lat']),
|
|
||||||
'geo_lon': str(city_Dict['@lon']),
|
|
||||||
}
|
|
||||||
|
|
||||||
city_kwargs.update(kwargs)
|
|
||||||
|
|
||||||
if 'area_id' in city_Dict:
|
|
||||||
city_kwargs.update({'area_id': city_Dict['area_id']})
|
|
||||||
|
|
||||||
city = City.objects.create(**city_kwargs)
|
city = City.objects.create(**city_kwargs)
|
||||||
|
else:
|
||||||
|
City.objects.filter(id=city.id).update(**city_kwargs)
|
||||||
|
|
||||||
|
|
||||||
if 'airports' in city_Dict:
|
if 'airports' in city_Dict:
|
||||||
|
|||||||
Reference in New Issue
Block a user