Metadata-Version: 1.1
Name: dj-geocoding
Version: 0.2.1
Summary: Django integration for geocoding (using Geocodio)
Home-page: https://github.com/bennylope/dj-geocoding
Author: Ben Lopatin
Author-email: ben@wellfire.co
License: BSD
Description: ============
        dj-geocoding
        ============
        
        .. image:: https://travis-ci.org/bennylope/dj-geocoding.svg?branch=master
            :target: https://travis-ci.org/bennylope/dj-geocoding
        
        Django features for simple geocoding. Current support for the Geocodio geocoding service
        
        Read the full docs on `Read the Docs <http://dj-geocoding.readthedocs.org/en/latest/>`_.
        
        Installing
        ==========
        
        Install dj-geocoding::
        
            pip install dj-geocoding
        
        Then use it in a project::
        
            import dj-geocoding
        
        Add your geocoding service API credentials to your `settings.py` file::
        
            GEOCODIO_API_KEY="SOMEAPIKEY"
        
        Model
        =====
        
        Use the optional model mixin to your model if you aren't using PostGIS::
        
            from dj_geocoding.models import GeoBase
        
            class MyModel(GeoBase, models.Model):
                pass
        
        This adds the followng fields::
        
            latitude = models.DecimalField(decimal_places=15, max_digits=18, null=True,
                    blank=True)
            longitude = models.DecimalField(decimal_places=15, max_digits=18, null=True,
                    blank=True)
        
        Adds a geocode method::
        
            def geocode(self, \*args, \**kwargs):
                return geocode()
        
        You should extend this in your model, providing the field(s) from which the
        address will be pulled::
        
            def geocode(self):
                return super(MyModel, self).geocode('address')
        
        You can choose the separator for providing a single address, too::
        
            def geocode(self):
                return super(MyModel, self).geocode('street_address', 'city', 'state',
                        seperator=", ")
        
        And additional property attributes for the `point` attribute.
        
        Bulk geocoding
        ==============
        
        The `bulk_geocode` function takes a queryset and geocodes its member objects.
        
        .. note::
        
            The model *must* implement a point-type field that behaves like a
            Point field.
        
        Example::
        
            geocoded_qs = bulk_geocode(MyModel.objects.all())
        
        Specifying the field name::
        
            geocoded_qs = bulk_geocode(MyModel.objects.all(), field='point')
        
        Manager
        -------
        
        The manager class implements a subclassed `QuerySet` with a `geocode` method::
        
            MyModel.objects.all().geocode()
        
        This returns a queryset of the objects updated (or not) that fit within the
        limits of the geocoding service. It is a convenient interface tot he
        `bulk_geocode` function.
        
        Admin site
        ==========
        
        The `GeocodedFilter` filter can be used to filter locations in the admin based
        on whether they have been geolocated or not.
        
        The `GeolocateMixin` class can be added to your `ModelAdmin` definition to add
        the `geocode_address` admin action. This adds the "geocode address" action to
        the admin actions dropdown menu and then will allow you to geocode an entire
        queryset from the admin.
        
        
        
        
        History
        -------
        
        0.2.1 (2014-12-02)
        ++++++++++++++++++
        
        * Removes reliance on queryset `geocode` method in admin action
        * Adds docs
        
        0.2.0 (2014-09-08)
        ++++++++++++++++++
        
        * Revise `has_geolocation` method, remove property status
        * Added list filter class `GeocodedFilter`
        
        0.1.1 (2014-08-26)
        ++++++++++++++++++
        
        * Bug fix for handling single None value in _set_point
        
        0.1.0 (2014-08-26)
        ++++++++++++++++++
        
        * First release on PyPI.
        
Keywords: dj-geocoding
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
