Flow_0tn4ed3
Flow_0lz96a1
{
"typeahead": {},
"cities_result": [
{
"id": 52,
"name": "Ashkāsham",
"state_id": 3901,
"state_code": "BDS",
"state_name": "Badakhshan",
"country_id": 1,
"country_code": "AF",
"country_name": "Afghanistan",
"latitude": "36.68333000",
"longitude": "71.53333000",
"wikiDataId": "Q4805192"
},
{
"id": 68,
"name": "Fayzabad",
"state_id": 3901,
"state_code": "BDS",
"state_name": "Badakhshan",
"country_id": 1,
"country_code": "AF",
"country_name": "Afghanistan",
"latitude": "37.11664000",
"longitude": "70.58002000",
"wikiDataId": "Q156558"
},
{
"id": 78,
"name": "Jurm",
"state_id": 3901,
"state_code": "BDS",
"state_name": "Badakhshan",
"country_id": 1,
"country_code": "AF",
"country_name": "Afghanistan",
"latitude": "36.86477000",
"longitude": "70.83421000",
"wikiDataId": "Q10308323"
}
]
}
{
"typeahead": {
"cities": [
{
"search_term": "Ashkāsham",
"result": {
"name": "Ashkāsham",
"country": "Afghanistan",
"state": "Badakhshan"
}
},
{
"search_term": "Fayzabad",
"result": {
"name": "Fayzabad",
"country": "Afghanistan",
"state": "Badakhshan"
}
},
{
"search_term": "Jurm",
"result": {
"name": "Jurm",
"country": "Afghanistan",
"state": "Badakhshan"
}
}
],
"countries": [
{
"result": {
"name": "Afghanistan"
},
"search_term": "Afghanistan"
}
],
"states": [
{
"result": {
"country": "Afghanistan",
"name": "Badakhshan"
},
"search_term": "Badakhshan"
}
]
}
}
Flow_0w7oyed
Flow_0lz96a1
DataStoreReference_1oronwq
def parse_cities_result():
cities = []
countries = []
states = []
states_by_country = {}
for result in cities_result:
name = result["name"]
state = result["state_name"]
country = result["country_name"]
cities.append({"search_term": name, "result": {"name": name, "state": state, "country": country}})
if country not in states_by_country:
states_by_country[country] = set()
states_by_country[country].add(state)
for country in states_by_country.keys():
countries.append({"search_term": country, "result":{"name": country}})
for state in states_by_country[country]:
states.append({"search_term": state, "result": {"name": state, "country": country}})
return { "cities": cities, "countries": countries, "states": states }
typeahead = parse_cities_result()
del(cities_result)
Fetching data from Countries-States-Cities DB (GitHub)
Flow_0tn4ed3
Flow_0w7oyed