在django中获取geoDjango后端的距离(PostGIS等...)

时间:2014-03-20 16:51:10

标签: python django gis geodjango geos

我不想经历安装PostGIS的痛苦,所以我可以使用django.contrib.gis获取距离原点的距离吗?

models.py

from django.contrib.gis.geos import Point

class Place(models.Model):
    name = models.CharField(max_length=50)
    lat = models.FloatField()
    lng = models.FloatField()

    def point(self):
        return Point(self.lat,self.lng)

views.py

origin = Point(lookup_lat,lookup_lng)
places = Place.objects.filter(point__distance_lte=(origin, D(mi=10))).distance(origin).order_by('distance')[:20]

我试过了,但我得到了Cannot resolve keyword 'point' into field.

1 个答案:

答案 0 :(得分:0)

在某些情况下,安装软件包libgeos-dev应解决此错误。