django-geohashing
A Django application for calculating geohashes and exposing them
via RESTful interface. Requires Django 1.8.x+ (takes advantage of
updated argument parsing for custom management commands, see:
Django 1.8 Release Notes for more information).
Installation
Install with pip:
pip install django-geohashing
Quick Start
-
Add "geohashing" and "rest_framework" to your INSTALLED_APPS:
INSTALLED_APPS = (
...
'geohashing',
'rest_framework',
)
-
Create the geohashing tables by resyncing your models:
python manage.py migrate
-
Populate the table using the get_historical_djia
management command:
python manage.py get_historical_djia --start <date> --end <date>
The get_historical_djia
command takes two optional parameters:
--start
and --end
. These parameters accept date strings of the format
YYYY-MM-DD
. They may be used to limit the set of results from
which to database is populated (so for instance to only retrieve and process
only the 30 most recent DJIA openings instead of every opening since 1928).
The parameters are optional but their use is very much encouraged; otherwise
tens of thousands of records will be retrieved and imported individually.
-
To expose the geohashing offsets via REST API, include geohashing.urls
in
your urls.py
. Though not strictly required, as a best practice a namespace
for the urls should be provided:
from django.conf.urls import url
urlpatterns = [
url(r'^geohashing/', include('geohashing.urls', namespace='geohashing')),
]
TODO
This project is still in an extremely early alpha stage. Tasks that still need
to be tackled: