2012-09-18 2 views
0

나는 ajax에 의해 일부 양식 값을 얻고 미리보기 페이지에 게시합니다. 하지만 난 내 템플릿 파일에서 그 값에 도달하는 방법을 얻을 수 없습니다. 여기 내 코드입니다 :django보기에서 ajax 데이터를 표시

내 아약스 기능 :

$('#preview').click(function() { 

     var title = $('#id_title').val(); // form input1 
     var body = $('#id_body').val(); // forminput2 

    var ajaxOptions = { 
     type:'post', 
     url : '/admin/post/preview/',//preview page's url which defined in urls.py 
     data : { 
      'title_preview' : title, 
      'body_preview' : body 
     }, 
     success: function(){ 
      window.open("/admin/post/preview"); // to see preview of post in a new window 
     }, 
     error: function(){ 
      alert('olmadı') 
     } 
    }; 


     $.ajax(ajaxOptions); 

내보기 :

@require_POST 
def preview(request): 

    title_preview = request.POST.get('title_preview') 
    body_preview = request.POST.get('body_preview') 
    query = Post(titlePreview = title_preview,bodyPreview = body_preview,owner = request.user) 
    query.save() 

    return render_to_response('preview.html',{'post':query},context_instance=RequestContext(request)) 

하지만이 작업을 나던. 빈 페이지로 보입니다. 무엇이 잘못 되었는가 알지 못합니다.

+0

POST() 개체 바로 전에 "title_preview"및 "body_preview"를 인쇄하려고 했습니까? 템플릿의 "게시물"에 어떻게 접근합니까? –

답변

0

미리보기에 게시하면 성공적으로 다시 돌아 오면 같은 URL을 다시 호출하여 별도의 창을 열려고합니다. 하지만 두 번째 호출에는 POST 데이터가 없으므로 자연스럽게 작동하지 않습니다. success 함수는 새 URL을 열지 않고 이미 전달 된 데이터로 무언가를 수행해야합니다.

+0

알았습니다. 고맙습니다. 하지만 몇 가지 코드로 설명 할 수 있습니까? – alix