2016-09-12 3 views
0

은 내가 장고 2 뷰를 만든 것은 즉django에서 다른 URL의 json 응답을 가져 오는 방법은 무엇입니까?

def next_qn_url(request): 
     test_result1 = 'questionansewrchoice' 
     return JsonResponse({'test_result':test_result1}) 
    def last_qn_url(request): 
     test_result2 = 'questionansewrchoice' 
     return JsonResponse({'test_result':test_result2}) 
    def test(request): 
     test = 'testchoice' 
     return render(request, 'ap/test.html', {}) 

나는 또한 urls.py에서 이러한 견해를 등록

urlpatterns = [ 
    url(r'^test/$', views.test, name='test'), 
    url(r'^next_qn_url/$', views.test, name='next_qn_url'), 
    url(r'^last_qn_url/$', views.test, name='last_qn_url'), 
    url(r'.*', views.home, name='home'),  
] 

내가 다른이 개보기에 내 테스트 페이지에서 데이터를 전송 및 가져 오기 위해 시도 그들의 json 응답 및 jQuery getJSON 함수의 도움으로 내 테스트 페이지를 업데이트하십시오.

$.getJSON('/next_qn_url/', selected_qn_ans, function(data) { 

      console.log(data); 

       }); 

$.getJSON('/last_qn_url/', selected_qn_ans, function(data) { 

      console.log(data); 

       }); 

여기에 대략적인 초안을 제공합니다. 하지만 jsonresponse에서 나는 모든 테스트 페이지를 몇 번이고 얻었지만 모든 HTML은 json이 아닙니다. 이 작업을 수행하거나 안내하는 올바른 방법이 아닙니까? 감사합니다

+0

파이썬에서 변수를 정의하기 위해'var'을 사용할 필요가 없으며, 파이썬에서 라인의 끝에';'를 사용할 필요가 없습니다. – Gocht

+0

어떤 장고를 사용하나요? – turkus

+0

장고를 사용하여 1.9.5 – Yogi

답변

1

나는 당신의 URL이 정확한지 확신하지 않습니다. 동일한 views.test Django 뷰의 첫 번째 3 점은 테스트 html을 계속 가져 오는 이유를 설명 할 수 있습니다. 내 이해에서 getJSON 함수에서 url의 이름을 호출하는 것은 '비슷한 이름'을 갖는 뷰를 ​​호출하는 것과 동일하지 않습니다. getJSON의 최초의 인수는, 뷰 명은 아니고 URL 명입니다.

urlpatterns = [ 
    url(r'^test/$', views.test, name='test'), 
    url(r'^next_qn_url/$', views.next_qn_url, name='next_qn_url'), 
    url(r'^last_qn_url/$', views.last_qn_url, name='last_qn_url'), 
    url(r'.*', views.home, name='home'),  
] 

가 작동 희망 :

나는 두 번째 & 세 번째 URL을에 차이를 볼 다음 수정을 시도 할 것입니다.

+0

어리석은 나는 오전 :/thanks Pol – Yogi

관련 문제