2015-01-21 2 views
0

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과 공간 쿼리를 수행해야합니다 알고 또는 무엇인가 그러나 이것은 단지 지금 일하는 것처럼 보일 필요가있다.

답변

0

수레는 음수 일 수 있습니다. 하지만 GET 문자열에서 부동 문자를 얻지 않으면 문자열이 생깁니다. 따라서 먼저 문자열을 실수로 변환하십시오.