Skip to main content

A Django application which manage administrative geographical data.

Project description

https://secure.travis-ci.org/saxix/django-geo.png?branch=master

A Django application which manage administrative geographical data. It use Modified Preorder Tree Traversal, provided by django-mptt https://github.com/django-mptt/django-mptt/

Geo is not intented to replace a GIS, but to manage all the cases where you have administrative trees, with a strict/lazy hierarchy.

Models

  • Country

  • Area

  • Location

  • AdministrativeAreaType

  • Currency

Examples

Three levels

italy = Country.objects.get(iso_code='IT')
regione, __ = italy.administrativeareatype_set.get_or_create(name='Regione')
provincia,__ = italy.administrativeareatype_set.get_or_create(name='Provincia',
                                                              parent=regione)
comune, __= italy.administrativeareatype_set.get_or_create(name='Comune',
                                                           parent=provincia)
lazio, __ = AdministrativeArea.objects.get_or_create(country=italy,
                                                     name ='Lazio',
                                                     type=regione)
roma_provincia, __ = AdministrativeArea.objects.get_or_create(country=italy,
                                                              name ='Provincia di Roma',
                                                              type=provincia,
                                                              parent=lazio)
roma_comune, __ = AdministrativeArea.objects.get_or_create(country=italy,
                                                            name ='Comune di Roma',
                                                            type=comune,
                                                            parent=roma_provincia)
roma, __  = Location.objects.get_or_create(country=italy,
                                            name ='Roma',
                                            type=Location.CITY,
                                            area=roma_comune)

Two levels,

us = Country.objects.get(iso_code='US')
state, __ = italy.administrativeareatype_set.get_or_create(name='State')
county,__ = italy.administrativeareatype_set.get_or_create(name='County',
                                                            parent=state)
ny, __ = AdministrativeArea.objects.get_or_create(country=us,
                                                    name ='New York',
                                                    type=state)
columbia, __ = AdministrativeArea.objects.get_or_create(country=us,
                                                        name ='Columbia',
                                                        type=county,
                                                        parent=ny)
hudson, __  = Location.objects.get_or_create(country=us,
                                             name ='Hudson',
                                             type=Location.CITY,
                                             area=columbia,
                                             is_administrative=True)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-geo-0.2.2b1.tar.gz (259.1 kB view details)

Uploaded Source

File details

Details for the file django-geo-0.2.2b1.tar.gz.

File metadata

File hashes

Hashes for django-geo-0.2.2b1.tar.gz
Algorithm Hash digest
SHA256 3c00336813973a5c320857da37fb33c7646b4a423bc6a4bc004239971f8897cd
MD5 a9f4c6860eee96d86c9e7d0a37f7b9c3
BLAKE2b-256 e0e57a801c0bba5d4224852d5e2484bd8a21ec12314f479a862cb8785bf70957

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page