Я хочу получить JSON с сервера. А вот функция просмотра сервера django:
def showChart(request):
data = [{"id":1, "name":"Tom", "email":"[email protected]"}, {"id":2, "name":"Bosh", "email":"[email protected]"}]
return HttpResponse(json.dumps(data), mimetype="application/json");
Очевидно, что showChart() вернет json.
Мой внешний код extjs4:
Ext.onReady(function() {
Ext.define('ProductionInfo', {
extend: 'Ext.data.Model',
fields: ['email', 'id', 'name']
});
var store_new = Ext.create('Ext.data.Store', {
model: 'ProductionInfo',
proxy: {
type: 'ajax',
url : 'http://localhost:8000/production_data',
reader: {
type: 'json'
}
}
});
store_new.load();
alert(store_new.getCount());
});
Но в диалоговом окне предупреждения отображается «0», а правильный ответ — «2». Так почему я не могу получить JSON с сервера? (Я могу получить правильный JSON через запрос GET в Chorme и Firefox)
getCount
(и, таким образом, возвращаете значение 0). Вам нужно добавить прослушиватель к событиюload
(хранилища), если вы хотите выполнить некоторую логику, которая происходит после завершения загрузки. - person Tommi   schedule 25.04.2012