2011-11-04 34 views
0

我遇到了Python(Django)框架的問題。我起初試圖直接向Django發送一個Javascript數組,除了它只拉取最後一個值。所以我現在使用JSON.stringify將我的JSON發送給Python。Python和JSON數組

在Python的它看起來像這樣

QueryDict: {u'[{"key:":"interface.dns","value:":192.168.0.1"}]':[u'']} 

如果我增加更多的價值,它只是增加了第一U.我怎樣才能讓這個所以它是一個循環。

例如爲字典中的每個鍵值顯示它。因爲它接縫的JSON被存儲在詞典的第一位。

任何想法

+0

*我怎樣才能使它成爲一個循環。*數據如何成爲一個循環?請告訴我們您如何發送數據以及如何在服務器端訪問數據。在我看來,你的主要問題是你不會向服務器發送「鍵值對」。 –

回答

1

QueryDictQueryDict對象實現文件接口。所以,你可以簡單地用標準的JSON庫JSON解碼:

import json 
... 
parsed_json = json.load(request.POST) # Or GET, depends on what you are using 
0

您可以使用Django的JSON解串器:

data = request.POST.keys()[0] 
for obj in serializers.deserialize("json", data): 
    do_something_with(obj) 

Read more.

看來你的JSON是一個關鍵發送,而不是POST(或GET)請求中的值。這可以工作,但對於慣例,它應該在價值部分。