Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -12,8 +12,8 @@ from django.conf import settings
|
||||
def MainPage(request):
|
||||
|
||||
from ReferenceDataApp.funcs import parse_data, search_cities_in_db, search_airports_in_db
|
||||
# res = search_cities_in_db('ms')
|
||||
# res = parse_data()
|
||||
res = search_airports_in_db('ang')
|
||||
res = parse_data()
|
||||
|
||||
page = StaticPage.objects.get(url='main')
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ def search_cities_in_db(search_str):
|
||||
Q_obj = Q(name_en__icontains=search_str) | Q(name_ru__icontains=search_str) | \
|
||||
Q(country__name_en__icontains=search_str) | Q(country__name_ru__icontains=search_str)
|
||||
res_data = City.objects.filter(Q_obj).values('id', 'name', 'country__name')
|
||||
return res_data
|
||||
return list(res_data)
|
||||
|
||||
def search_airports_in_db(search_str):
|
||||
Q_obj = Q(iata_code__icontains=search_str) | \
|
||||
@@ -18,7 +18,7 @@ def search_airports_in_db(search_str):
|
||||
Q(city__country__name_en__icontains=search_str) | \
|
||||
Q(city__country__name_ru__icontains=search_str)
|
||||
res_data = Airport.objects.filter(Q_obj).values('id', 'name', 'iata_code', 'city__name', 'city__country__name')
|
||||
return res_data
|
||||
return list(res_data)
|
||||
|
||||
|
||||
def get_country_area_id_by_countryName(class_obj, name):
|
||||
@@ -61,8 +61,8 @@ def create_airports_by_airportsList(airportsList, city=None):
|
||||
airport_kwargs = {
|
||||
'city': city,
|
||||
|
||||
'name_ru': airport_Dict['name:ru'],
|
||||
'name_en': airport_Dict['name:en'],
|
||||
# 'name_ru': airport_Dict['name:ru'],
|
||||
# 'name_en': airport_Dict['name:en'],
|
||||
|
||||
'geo_lat': str(airport_Dict['@lat']),
|
||||
'geo_lon': str(airport_Dict['@lon']),
|
||||
@@ -73,6 +73,12 @@ def create_airports_by_airportsList(airportsList, city=None):
|
||||
'icao_code': airport_Dict['icao'],
|
||||
}
|
||||
|
||||
if airport_Dict['name:ru']:
|
||||
airport_kwargs.update({'name_ru': airport_Dict['name:ru']})
|
||||
|
||||
if airport_Dict['name:en']:
|
||||
airport_kwargs.update({'name_en': airport_Dict['name:en']})
|
||||
|
||||
if 'area_id' in airport_Dict:
|
||||
airport_kwargs.update({'area_id': airport_Dict['area_id']})
|
||||
|
||||
@@ -86,6 +92,7 @@ def create_airports_by_airportsList(airportsList, city=None):
|
||||
|
||||
|
||||
def parse_data():
|
||||
# Airport.objects.all().delete()
|
||||
# Country.objects.all().delete()
|
||||
|
||||
from BaseModels.OpenStreetMap.osm_api import osm_get_countries, osm_get_country_w_cities_n_airports
|
||||
@@ -132,8 +139,8 @@ def parse_data():
|
||||
|
||||
if not country:
|
||||
country_kwargs = {
|
||||
'name_ru': country_Dict['name:ru'],
|
||||
'name_en': country_Dict['name:en'],
|
||||
# 'name_ru': country_Dict['name:ru'],
|
||||
# 'name_en': country_Dict['name:en'],
|
||||
'international_name': country_Dict['int_name'],
|
||||
'official_name': country_Dict['official_name'],
|
||||
|
||||
@@ -146,6 +153,13 @@ def parse_data():
|
||||
'geo_lat': str(country_Dict['@lat']),
|
||||
'geo_lon': str(country_Dict['@lon']),
|
||||
}
|
||||
|
||||
if country_Dict['name:ru']:
|
||||
country_kwargs.update({'name_ru': country_Dict['name:ru']})
|
||||
|
||||
if country_Dict['name:en']:
|
||||
country_kwargs.update({'name_en': country_Dict['name:en']})
|
||||
|
||||
if 'area_id' in country_Dict:
|
||||
country_kwargs.update({'area_id': country_Dict['area_id']})
|
||||
|
||||
@@ -155,12 +169,14 @@ def parse_data():
|
||||
for city_Dict in country_Dict['cities']:
|
||||
|
||||
city = None
|
||||
|
||||
kwargs = {}
|
||||
if city_Dict['name:en']:
|
||||
kwargs.update({'name_en': city_Dict['name:en']})
|
||||
elif city_Dict['name:ru']:
|
||||
kwargs.update({'name_ru': city_Dict['name:ru']})
|
||||
|
||||
try:
|
||||
kwargs = {}
|
||||
if country_Dict['name:en']:
|
||||
kwargs.update({'name_en': country_Dict['name:en']})
|
||||
elif country_Dict['name:ru']:
|
||||
kwargs.update({'name_ru': country_Dict['name:ru']})
|
||||
city = City.objects.get(**kwargs)
|
||||
except Exception as e:
|
||||
print(f'error = {str(e)}')
|
||||
@@ -170,13 +186,15 @@ def parse_data():
|
||||
city_kwargs = {
|
||||
'country': country,
|
||||
|
||||
'name_ru': city_Dict['name:ru'],
|
||||
'name_en': city_Dict['name:en'],
|
||||
# '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']})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user