[英]Sending array to django via ajax
我試圖通過AJAX POST發送Javascript數組到django視圖。
我使用JSON.stringify將數組存儲在隱藏的輸入中:
$('#id_uuids').val(JSON.stringify(arr));
這是我嘗試發送的方式:
$.post("/ajax/generateGallery",{uuids: $('#id_uuids').val()},function(response){
resp = JSON.parse(response);
alert(resp.html);
},"json");
瀏覽器控制台顯示正在發送的數據如下所示:
uuids:["6ecbe35b-0b77-4810-aa9a-918fecaeef13","e41f52f7-721b-4d44-b7d6-bbb275182d66"]
但是,我無法在django視圖中使用它。 我試過了:
uuids = request.POST.getlist('uuids')
logger.info(uuids)
logger.info(type(uuids))
返回:
[08/Aug/2014 15:20:00] INFO [app.rest_client:307] [u'["89a26646-6000-4c48-804a-69abcc496fd8"]']
[08/Aug/2014 15:20:00] INFO [app.rest_client:308] <type 'list'>
[08/Aug/2014 15:20:00] INFO [app.rest_client:312] Generate HTML gallery for photo ["89a26646-6000-4c48-804a-69abcc496fd8"]
因此,Django非常將發送的列表視為單個元素。 如何強制python代碼將此數據視為列表並可以迭代?
嘗試對發布的數據進行JSON解碼
uuids = json.loads(request.POST.get('uuids'))
也就是說,如果您之前加載了一些json模塊,例如
import simplejson as json
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.