django中的纬度和经度查询

时间:2015-01-21 23:19:46

标签: python django

我需要快速修复django中的简单空间搜索。 我现在的主要问题是花车不能是负面的,我不知道如何克服这一点。

这是我的模型的样子

class CustomEvent(models.Model):
    lat = models.FloatField(blank=True, null=True)
    lng = models.FloatField(blank=True, null=True)

这是我非常糟糕的查询,但我需要让它工作得非常快

lat = float(request.GET['lat'])
lng = float(request.GET['lng'])

min_lat = lat - 1 # You have to calculate this offsets based on the user location.
max_lat = lat + 1 # Because the distance of one degree varies over the planet.
min_lng = lng - 1
max_lng = lng + 1 

custom_events_raw = CustomEvent.objects.filter(lat__gt=min_lat, lat__lt=max_lat, lng__gt=min_lng, lng__lt=max_lng)

我知道我应该使用geodjango或其他东西进行空间查询,但这只需要看起来像现在一样。

1 个答案:

答案 0 :(得分:0)

浮动可能是负面的。但是你没有得到GET字符串的浮点数,你得到了字符串。所以首先将字符串转换为浮点数。