2013-10-16 38 views
1

客戶端從兩個表中獲取數據。這裏是從文件views.py代碼:在Django中添加一些數據給db響應

... 
dbdataA = TableA.objects.filter(user=user) 
dbdataB = TableB.objects.filter(user=user).order_by("field1") 
result_list = list(chain(orders, alldata)) 
msg = serializers.serialize("json", result_list, fields=("field1","field2","field3","field4"), use_natural_keys=True) 
return HttpResponse(msg) 

我需要添加一個var與當前時間響應。這個怎麼做?

UPD: 傳遞給鏈(單,ALLDATA,...)給出的任何錯誤的數據 「 'STR' 對象有沒有屬性 '_meta'」 在字符串 「MSG = serializers.serialize ...」。也許是因爲鏈()不能採取任何數據,除了迭代,但(time.asctime(time.localtime())沒有可迭代?

+0

確保添加'CONTENT_TYPE =「應用/ JSON」''來回報HttpResponse(msg)'。 –

回答

2

的變量添加到您的result_list和你fields列表。

import time 
result_list = list(chain(orders, alldata, 
         (time.asctime(time.localtime()),)) 
       ) #or other time function 
msg = serializers.serialize("json", result_list, 
          fields=("field1", "field2", "field3", "field4", "time"), 
          use_natural_keys=True) 

或者,如果你不想的時候添加到JSON對象,HTTPResponse(msg)already sets在HTTP響應報頭中的日期參數。

+1

Http Response頭中的Date參數是一個很好的解決方案。我還發現了一些ab它在這裏http://stackoverflow.com/questions/1557602/jquery-and-ajax-response-header/4236041#4236041 – kvadrat

相關問題