Removed legacy shortcut for importing GeoIP.
This commit is contained in:
parent
d4ea02b992
commit
b2d20e9826
|
@ -14,12 +14,4 @@ if HAS_GDAL:
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# GeoIP now lives in `django.contrib.gis.geoip`; this shortcut will be
|
|
||||||
# removed in Django 1.6.
|
|
||||||
from django.contrib.gis.utils import geoip
|
|
||||||
HAS_GEOIP = geoip.HAS_GEOIP
|
|
||||||
if HAS_GEOIP:
|
|
||||||
GeoIP = geoip.GeoIP
|
|
||||||
GeoIPException = geoip.GeoIPException
|
|
||||||
|
|
||||||
from django.contrib.gis.utils.wkt import precision_wkt
|
from django.contrib.gis.utils.wkt import precision_wkt
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
import warnings
|
|
||||||
|
|
||||||
from django.contrib.gis import geoip
|
|
||||||
HAS_GEOIP = geoip.HAS_GEOIP
|
|
||||||
if HAS_GEOIP:
|
|
||||||
BaseGeoIP = geoip.GeoIP
|
|
||||||
GeoIPException = geoip.GeoIPException
|
|
||||||
|
|
||||||
class GeoIP(BaseGeoIP):
|
|
||||||
def __init__(self, *args, **kwargs):
|
|
||||||
warnings.warn('GeoIP class has been moved to `django.contrib.gis.geoip`, and '
|
|
||||||
'this shortcut will disappear in Django v1.6.',
|
|
||||||
DeprecationWarning, stacklevel=2)
|
|
||||||
super(GeoIP, self).__init__(*args, **kwargs)
|
|
|
@ -7,22 +7,13 @@ Geolocation with GeoIP
|
||||||
.. module:: django.contrib.gis.geoip
|
.. module:: django.contrib.gis.geoip
|
||||||
:synopsis: High-level Python interface for MaxMind's GeoIP C library.
|
:synopsis: High-level Python interface for MaxMind's GeoIP C library.
|
||||||
|
|
||||||
.. versionchanged:: 1.4
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
In Django 1.4, the :class:`GeoIP` object was moved out of
|
|
||||||
:mod:`django.contrib.gis.utils` and into its own module,
|
|
||||||
:mod:`django.contrib.gis.geoip`. A shortcut is still provided
|
|
||||||
in ``utils``, but will be removed in Django 1.6.
|
|
||||||
|
|
||||||
The :class:`GeoIP` object is a ctypes wrapper for the
|
The :class:`GeoIP` object is a ctypes wrapper for the
|
||||||
`MaxMind GeoIP C API`__. [#]_ This interface is a BSD-licensed alternative
|
`MaxMind GeoIP C API`__. [#]_ This interface is a BSD-licensed alternative
|
||||||
to the GPL-licensed `Python GeoIP`__ interface provided by MaxMind.
|
to the GPL-licensed `Python GeoIP`__ interface provided by MaxMind.
|
||||||
|
|
||||||
In order to perform IP-based geolocation, the :class:`GeoIP` object requires
|
In order to perform IP-based geolocation, the :class:`GeoIP` object requires
|
||||||
the GeoIP C libary and either the GeoIP `Country`__ or `City`__
|
the GeoIP C libary and either the GeoIP `Country`__ or `City`__
|
||||||
datasets in binary format (the CSV files will not work!). These datasets may be
|
datasets in binary format (the CSV files will not work!). These datasets may be
|
||||||
`downloaded from MaxMind`__. Grab the ``GeoLiteCountry/GeoIP.dat.gz`` and
|
`downloaded from MaxMind`__. Grab the ``GeoLiteCountry/GeoIP.dat.gz`` and
|
||||||
``GeoLiteCity.dat.gz`` files and unzip them in a directory corresponding to what
|
``GeoLiteCity.dat.gz`` files and unzip them in a directory corresponding to what
|
||||||
you set :setting:`GEOIP_PATH` with in your settings. See the example and
|
you set :setting:`GEOIP_PATH` with in your settings. See the example and
|
||||||
|
@ -58,7 +49,7 @@ usage::
|
||||||
>>> g.lat_lon('salon.com')
|
>>> g.lat_lon('salon.com')
|
||||||
(37.789798736572266, -122.39420318603516)
|
(37.789798736572266, -122.39420318603516)
|
||||||
>>> g.lon_lat('uh.edu')
|
>>> g.lon_lat('uh.edu')
|
||||||
(-95.415199279785156, 29.77549934387207)
|
(-95.415199279785156, 29.77549934387207)
|
||||||
>>> g.geos('24.124.1.80').wkt
|
>>> g.geos('24.124.1.80').wkt
|
||||||
'POINT (-95.2087020874023438 39.0392990112304688)'
|
'POINT (-95.2087020874023438 39.0392990112304688)'
|
||||||
|
|
||||||
|
@ -104,30 +95,30 @@ Defaults to ``'GeoLiteCity.dat'``.
|
||||||
|
|
||||||
.. class:: GeoIP([path=None, cache=0, country=None, city=None])
|
.. class:: GeoIP([path=None, cache=0, country=None, city=None])
|
||||||
|
|
||||||
The ``GeoIP`` object does not require any parameters to use the default
|
The ``GeoIP`` object does not require any parameters to use the default
|
||||||
settings. However, at the very least the :setting:`GEOIP_PATH` setting
|
settings. However, at the very least the :setting:`GEOIP_PATH` setting
|
||||||
should be set with the path of the location of your GeoIP data sets. The
|
should be set with the path of the location of your GeoIP data sets. The
|
||||||
following intialization keywords may be used to customize any of the
|
following intialization keywords may be used to customize any of the
|
||||||
defaults.
|
defaults.
|
||||||
|
|
||||||
=================== =======================================================
|
=================== =======================================================
|
||||||
Keyword Arguments Description
|
Keyword Arguments Description
|
||||||
=================== =======================================================
|
=================== =======================================================
|
||||||
``path`` Base directory to where GeoIP data is located or the
|
``path`` Base directory to where GeoIP data is located or the
|
||||||
full path to where the city or country data files
|
full path to where the city or country data files
|
||||||
(.dat) are located. Assumes that both the city and
|
(.dat) are located. Assumes that both the city and
|
||||||
country data sets are located in this directory;
|
country data sets are located in this directory;
|
||||||
overrides the :setting:`GEOIP_PATH` settings attribute.
|
overrides the :setting:`GEOIP_PATH` settings attribute.
|
||||||
|
|
||||||
``cache`` The cache settings when opening up the GeoIP datasets,
|
``cache`` The cache settings when opening up the GeoIP datasets,
|
||||||
and may be an integer in (0, 1, 2, 4) corresponding to
|
and may be an integer in (0, 1, 2, 4) corresponding to
|
||||||
the ``GEOIP_STANDARD``, ``GEOIP_MEMORY_CACHE``,
|
the ``GEOIP_STANDARD``, ``GEOIP_MEMORY_CACHE``,
|
||||||
``GEOIP_CHECK_CACHE``, and ``GEOIP_INDEX_CACHE``
|
``GEOIP_CHECK_CACHE``, and ``GEOIP_INDEX_CACHE``
|
||||||
``GeoIPOptions`` C API settings, respectively.
|
``GeoIPOptions`` C API settings, respectively.
|
||||||
Defaults to 0 (``GEOIP_STANDARD``).
|
Defaults to 0 (``GEOIP_STANDARD``).
|
||||||
|
|
||||||
``country`` The name of the GeoIP country data file. Defaults
|
``country`` The name of the GeoIP country data file. Defaults
|
||||||
to ``GeoIP.dat``. Setting this keyword overrides the
|
to ``GeoIP.dat``. Setting this keyword overrides the
|
||||||
:setting:`GEOIP_COUNTRY` settings attribute.
|
:setting:`GEOIP_COUNTRY` settings attribute.
|
||||||
|
|
||||||
``city`` The name of the GeoIP city data file. Defaults to
|
``city`` The name of the GeoIP city data file. Defaults to
|
||||||
|
@ -142,9 +133,9 @@ Querying
|
||||||
--------
|
--------
|
||||||
|
|
||||||
All the following querying routines may take either a string IP address
|
All the following querying routines may take either a string IP address
|
||||||
or a fully qualified domain name (FQDN). For example, both
|
or a fully qualified domain name (FQDN). For example, both
|
||||||
``'205.186.163.125'`` and ``'djangoproject.com'`` would be valid query
|
``'205.186.163.125'`` and ``'djangoproject.com'`` would be valid query
|
||||||
parameters.
|
parameters.
|
||||||
|
|
||||||
.. method:: GeoIP.city(query)
|
.. method:: GeoIP.city(query)
|
||||||
|
|
||||||
|
@ -153,7 +144,7 @@ of the values in the dictionary may be undefined (``None``).
|
||||||
|
|
||||||
.. method:: GeoIP.country(query)
|
.. method:: GeoIP.country(query)
|
||||||
|
|
||||||
Returns a dictionary with the country code and country for the given
|
Returns a dictionary with the country code and country for the given
|
||||||
query.
|
query.
|
||||||
|
|
||||||
.. method:: GeoIP.country_code(query)
|
.. method:: GeoIP.country_code(query)
|
||||||
|
@ -202,7 +193,7 @@ and country), and the version of the GeoIP C library (if supported).
|
||||||
GeoIP-Python API compatibility methods
|
GeoIP-Python API compatibility methods
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
|
|
||||||
These methods exist to ease compatibility with any code using MaxMind's
|
These methods exist to ease compatibility with any code using MaxMind's
|
||||||
existing Python API.
|
existing Python API.
|
||||||
|
|
||||||
.. classmethod:: GeoIP.open(path, cache)
|
.. classmethod:: GeoIP.open(path, cache)
|
||||||
|
|
Loading…
Reference in New Issue