Django app to add a "position" field to the request, using GeoIP or GPS data given in the request headers
Project description
=======================
Django Request Position
=======================
Django app to add a "position" field to the request, using GeoIP or GPS data given in the request headers. Some
references about this:
* `A Uniform Resource Identifier for Geographic Locations ('geo' URI) <http://tools.ietf.org/rfc/rfc5870>`_.
* `HTTP Geolocation draft-thomson-geopriv-http-geolocation-00 <http://tools.ietf.org/html/draft-thomson-geopriv-http-geolocation-00>`_.
Quick start
-----------
**1** Install using pip::
pip install django-belt
**2** Add "request_position" to your INSTALLED_APPS settings like this::
INSTALLED_APPS += ('request_position',)
**3** Add the middleware::
MIDDLEWARE += (
'request_position.middleware.RequestPositionMiddleware',
)
Settings
--------
* ``REQUEST_POSITION_REMOTE_ADDR_ATTR`` (default: "REMOTE_ADDR")
* ``REQUEST_POSITION_DEFAULT_IP`` (default: "127.0.0.1")
* ``REQUEST_POSITION_DEFAULT_POSITION`` (default: None)
* ``REQUEST_POSITION_DEFAULT_COUNTRY_CODE`` (default: None)
* ``REQUEST_POSITION_COOKIE_NAME`` (default: "_request_position")
* ``REQUEST_POSITION_GEO_HEADER`` (default: "HTTP_GEOLOCATION")
* ``REQUEST_POSITION_OVERRIDE_LATITUDE_PARAM`` (default "lat")
* ``REQUEST_POSITION_OVERRIDE_LONGITUDE_PARAM`` (default "lon")
* ``REQUEST_POSITION_OVERRIDE_COUNTRY_CODE_PARAM`` (default "cc")
* ``REQUEST_POSITION_USE_GIS_POINT`` (default False)
History
-------
1.0a8 (2017-12-04)
+++++++++++++++++
* Fixed error wile providing a IP that does not exists.
1.0a7 (2017-12-04)
+++++++++++++++++
* Added ``geoip2`` requirement.
1.0a6 (2017-12-04)
+++++++++++++++++
* Support for Django 2.0.
1.0a5 (2017-2-28)
+++++++++++++++++
* Fixed settings variables prefix.
* Fixed problem with default REQUEST_POSITION_DEFAULT_COUNTRY_CODE value.
* Added settings variables to README.
1.0a4 (2017-2-28)
+++++++++++++++++
* Fixed problem with missing REMOTE_ADDR_ATTR setting variable.
1.0a3 (2017-2-28)
+++++++++++++++++
* Fixed problem with missing header.
1.0a2 (2017-2-28)
+++++++++++++++++
* Fixed Django 1.10 compatibility with new middleware.
1.0a1 (2017-2-21)
+++++++++++++++++
* First release on PyPI.
Django Request Position
=======================
Django app to add a "position" field to the request, using GeoIP or GPS data given in the request headers. Some
references about this:
* `A Uniform Resource Identifier for Geographic Locations ('geo' URI) <http://tools.ietf.org/rfc/rfc5870>`_.
* `HTTP Geolocation draft-thomson-geopriv-http-geolocation-00 <http://tools.ietf.org/html/draft-thomson-geopriv-http-geolocation-00>`_.
Quick start
-----------
**1** Install using pip::
pip install django-belt
**2** Add "request_position" to your INSTALLED_APPS settings like this::
INSTALLED_APPS += ('request_position',)
**3** Add the middleware::
MIDDLEWARE += (
'request_position.middleware.RequestPositionMiddleware',
)
Settings
--------
* ``REQUEST_POSITION_REMOTE_ADDR_ATTR`` (default: "REMOTE_ADDR")
* ``REQUEST_POSITION_DEFAULT_IP`` (default: "127.0.0.1")
* ``REQUEST_POSITION_DEFAULT_POSITION`` (default: None)
* ``REQUEST_POSITION_DEFAULT_COUNTRY_CODE`` (default: None)
* ``REQUEST_POSITION_COOKIE_NAME`` (default: "_request_position")
* ``REQUEST_POSITION_GEO_HEADER`` (default: "HTTP_GEOLOCATION")
* ``REQUEST_POSITION_OVERRIDE_LATITUDE_PARAM`` (default "lat")
* ``REQUEST_POSITION_OVERRIDE_LONGITUDE_PARAM`` (default "lon")
* ``REQUEST_POSITION_OVERRIDE_COUNTRY_CODE_PARAM`` (default "cc")
* ``REQUEST_POSITION_USE_GIS_POINT`` (default False)
History
-------
1.0a8 (2017-12-04)
+++++++++++++++++
* Fixed error wile providing a IP that does not exists.
1.0a7 (2017-12-04)
+++++++++++++++++
* Added ``geoip2`` requirement.
1.0a6 (2017-12-04)
+++++++++++++++++
* Support for Django 2.0.
1.0a5 (2017-2-28)
+++++++++++++++++
* Fixed settings variables prefix.
* Fixed problem with default REQUEST_POSITION_DEFAULT_COUNTRY_CODE value.
* Added settings variables to README.
1.0a4 (2017-2-28)
+++++++++++++++++
* Fixed problem with missing REMOTE_ADDR_ATTR setting variable.
1.0a3 (2017-2-28)
+++++++++++++++++
* Fixed problem with missing header.
1.0a2 (2017-2-28)
+++++++++++++++++
* Fixed Django 1.10 compatibility with new middleware.
1.0a1 (2017-2-21)
+++++++++++++++++
* First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for django-request-position-1.0a8.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad8dbcc2fd1b23faa13db93f44a33277b3945d690168cc7f833d760fec01e1af |
|
MD5 | ef0db86323686ffd6dadf34a584e3c45 |
|
BLAKE2b-256 | 6327fc20d3188d7aef3481678e6a35b0ebe28e9fbf366eb5b21e665a92593877 |
Close
Hashes for django_request_position-1.0a8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87a1113e7b2041abced2c294bdb55fabf63cfe771bf8a46193f37d9afbce453d |
|
MD5 | dcdf8127d8e542ce6b9305708a1d1691 |
|
BLAKE2b-256 | 932d556ce9fc760c27a2e96dfe24593ec8cd0c3fd3e60dce4a7653991c897077 |