Which Model Field to use in Django to store longitude and latitude values?
I want to store my users location using longitude and latitude, at the moment this comes from Google Maps, but I will be using GeoDango and some point to work out distances between to points also.
However, my first confusion is which field in Django I should be using to store the longitude and latitude values? The information I'm getting is conflicting.
The official documentation uses a
lon = models.FloatField() lat = models.FloatField()
Where almost every answer on stackoverflow shows a
long = models.DecimalField(max_digits=8, decimal_places=3) lat = models.DecimalField(max_digits=8, decimal_places=3)
So what should I be using?
Float is generally an approximation, see here for some simple examples. You could get very nice results modifying your model to something like
DecimalField(max_digits=9, decimal_places=6), since decimals are very important in coordinates but using more than 6 is basically meaningless.