我用ajax从django views.py获取嵌套的dict。我如何访问嵌套数据?
在views.py
中class Dash():
def get(self, request, format=None):
data = {'index':{'a':[1,2], 'b':[2,3]}, 'value':{'a':[2,3], 'b':[3,4]}}
return Response(data)
在urls.py中
url(r'^api/chart/data/Dash$', Dash.as_view())
在Dash.html中
var endpoint = '/api/chart/data/Dash'
var index = []
var value = []
$.ajax({
method: "GET",
url: endpoint,
success: function (data) {
index = data.index
value = data.value
setChart()
},
error: function (error_data) {
console.log("error")
console.log(error_data)
}
})
function setChart() {
var rbline = echarts.init(document.getElementById('rb-line'));
rbline.setOption({
xAxis: [{
type: 'category',
data: index['a']
}],
series: [{
name: 'data',
type: 'line',
data: value['a']
}]
});
}
没有图表显示。 我是Jquery的新手,有人可以帮助我吗?
答案 0 :(得分:0)
您可以将数据转储到json,还需要指定要返回的内容类型是json。 javascript将为您完成剩下的工作。
import json
from django.http import HttpResponse
def get(self, request, format=None):
data = {'index': {'a': [1, 2], 'b': [2, 3]}, 'value': {'a': [2, 3], 'b': [3, 4]}}
json_data = json.dumps(data)
return HttpResponse(json_data, content_type='application/json)
然后你可以在你的ajax中访问它:
success: function(data){
var index = data.index;
var value = data.value;
var a = data.index['a']
}