2009-10-03 3 views
0

나는 x와 y와 같은 두 변수를 가지고 있습니다. 나는 또한 3 개의 필드 (경도, 위도, 이름)로 모델을 만들었고 mysql 데이터베이스에서 활성화시켰다. 위의 두 변수 (x, y)를 django 서버에 보내야만 경도 = x와 위도 = y를 가진 객체가 있는지 검색 할 수 있습니다.장고를 사용하여 데이터베이스에서 데이터 요청

어떻게하면됩니까?

답변

0

Basicly 당신은 dB로 물어 기운이

def get_name_by_xy(request, x, y): 
    import YourModel 
    try: 
     info = YourModel.objects.filter(longitude=x, latitude=y) 
     for i in info: 
      print i.name 
    except YourModel.DoesNotExist: 
     print 'No coincidences' 

는 1이 아니면 1보다 크면 x, y 경도와 위도를 가진 모든 행을 얻을 수 있습니다.

0
try: 
    x = OurModel.objects.filter(longitude=x, latitude=y) 
    for cur in x: 
     print cur.name 
except OurModel.DoesNotExist: 
    print 'sorry, there is no record you are looking for :(' 

작동합니다 :)

물론

, print 콘솔에 이름이 표시됩니다.

URL :

url(r'^get_name_by_xy/(?P<x>\d+)/(?P<y>\d+)/$', 'get_name_by_xy', name='get_name_by_xy'), 

보기 :이 같은 경도 = x와 위도 = y를 가진 객체가있는 경우

+0

x, y가 1보다 많은 행이있는 경우 Django가 당신을 위해 자랄 것입니다 : MultipleObjectsReturned : get()이 둘 이상 반환되었습니다 OurModel – panchicore

+0

U가 맞습니다, 단 하나 일 수는 있지만 ... 내 대답을 고칠 것입니다. – IProblemFactory

관련 문제