2016-08-16 2 views
-2

私はJavascriptでポストコールを書いています。私はPythonリストをポストコールに返す返信データDjango

def populateteam(request): 
    team_members_project=[] 
    myTeam_project=request.POST.get("myProject") 
    proj_obj = Project.project.all().filter(name=myTeam_project) 
    team=Employee.employee.all().filter(projects=proj_obj) 
    for i in range (len(team)): 
     team_members=team[i].full_name() 
     team_members_project.append(team_members) 

がどのように私はjavascript関数にリストを返すことができるリストを取得ビューを書かれているビューで

function chooseTeam(){ 
var myProject=document.getElementById("myProject").value 
document.getElementById("myTeam").disabled=false; 
$.post('http://localhost:8000/timer/populateteam/',{ "myProject": myProject}, 
     function(returnedData) { 
      console.log(returnedData) 
      console.log(typeof returnedData) 


     }); 
} 

。私はDjango restフレームワークを使用していません。

答えて

0

あなたはJsonResponseを使用することができます。リストをjsonResponseに渡して、セーフパラメータをFalseに設定するだけです。

return JsonResponse(team_members_project,safe=False) 
2

あなたの輸入にこれらを追加します。

import json 
from django.http import HttpResponse 

は、その後、あなたのビュー内で、このようなJSONエンコードされたリストでのHttpResponseを返す:

return HttpResponse(json.dumps(team_members_project), content_type="application/json") 
0

jsonモジュールの関数を使用してエンコードできます。
return json.dumps({'array':team_members})

あなたはJSONデータを受け取るためにあなたのPOSTリクエストのヘッダーにcontentType: 'application/json'を使用することができます。

2

HttpResponseを使用して、リストをJsonにダンプします。コンテンツタイプは "application/json"にする必要があります。

json.dumps(list) 
関連する問題