This add-on provides models and commands to import country, region/state, and city data in your database.
The data is pulled from GeoNames and contains cities, regions/states and countries.
Spatial query support is not required by this application.
This application is very simple and is useful if you want to make a simple address book for example. If you intend to build a fully featured spatial database, you should use django-cities.
Requirements:
- Python 2.7 or 3.3,
- Django 1.4 or 1.5 or 1.6,
- PostgreSQL or SQLite.
- django-south is optionnal, but recommended.
MySQL support was dropped on 2.x.x because it stopped working. It is supported again in 3.x.x, which uses django.db.transaction.atomic, which requires Django >= 1.6.
See CHANGELOG.
Install django-cities-light:
pip install django-cities-light
Or the development version:
pip install -e [email protected]:yourlabs/django-cities-light.git#egg=cities_light
Add cities_light to your INSTALLED_APPS.
Now, run syncdb, it will only create tables for models that are not disabled:
./manage.py syncdb
Note that this project supports django-south. It is recommended that you use south too else you're on your own for migrations/upgrades.
!DANGER!
Since version 2.4.0, django-cities-light uses django migrations by default. This means that django-south users should add to settings:
SOUTH_MIGRATION_MODULES = { 'cities_light': 'cities_light.south_migrations', }
Finally, populate your database with command:
./manage.py cities_light
This command is well documented, consult the help with:
./manage.py help cities_light
You could subscribe to the mailing list ask questions or just be informed of package updates.