[Django]-GeoDjango Too Much For This Project?

3👍

To accurately find geolocated posts within a given radius of a location, you need to calculate distances between geographic locations. The calculations are not trivial. To quote the Django docs (with a minor grammatical correction):

Distance calculations with spatial data are tricky because,
unfortunately, the Earth is not flat.

Fortunately using GeoDjango hides this complexity. Distance queries are as simple as the following:

qs = SouthTexasCity.objects.filter(point__distance_lte=(pnt, 7000))

Although one could program this logic using JavaScript/JQuery, I don’t see a reason to because you are already using Django. Unless if you are:

  1. unable to use a spatial database. GeoDjango distance queries are only available if you use PostGIS, Oracle, or SpatiaLite as your database. (i.e. MySQL does not support distance queries)

  2. unable to install the geospatial libraries that GeoDjango depends on.

Leave a comment