Я пытаюсь загрузить вложенную JSONData в мою сетку деревьев. При первом вызове получения данных все данные, необходимые для заполнения сетки, возвращаются в ответе как объект JSON. Однако я вижу, что он все еще пытается получить данные для всех родительских объектов в сетке.Загрузка вложенных данных JSON в ExtJS4 TreeGrid
Даже после ложных GET, он все еще не может заполнить дочерние узлы.
Я определил 2 модели, родителю с «hasMany» отношения со ссылкой на дочернюю модель, и дочерний узел с «BelongsTo» отношения со ссылкой на родительской модели
Я использую Ajax Proxy с читателем JSON.
Поиск в Интернете Я не могу найти много информации, и я использовал пример user-orderitems-products в документации extJS, чтобы попытаться настроить мои модели и дерево.
Я не совсем уверен, чего мне не хватает. Любая помощь будет высоко оценена.
JSON (человек может или не может иметь детей объекты):
People: {
{firstName: john, id:123, uniqueID:1231, leaf:true},
{firstName: jane, id:124, uniqueID:1240,
offspring:[
{firstName: adam, id:124, uniqueID:1241, leaf:true},
{firstName: brandon, id:124, uniqueID:1242, leaf:true},
{firstName: claire, id:1243, uniqueID:1243, leaf:true}
]}
}
Модель:
Ext.define('Person',{
extend: 'Ext.data.Model',
fields: [
{name: 'firstName', type:'string'},
{name: 'uniqueID', type:'float'}
hasMany: {
model:'Offspring',
name: 'Offspring',
associationKey: 'offspring',
primaryKey: 'uniqueID',
foreignKey: 'id'
}
],
proxy: {
type: 'rest',
url: 'http://blah/blah',
reader: {
type: 'json',
root: 'People'
}
}
});
Ext.define('Offspring',{
extend: 'Ext.data.Model',
fields: [
{name: 'firstName', type:'string'},
{name: 'uniqueID', type:'float'}
],
belongsTo: 'Person'
});
магазин Определение:
var store = Ext.create('Ext.data.TreeStore', {
model: 'Person',
folderSort: true
}
Не могли бы вы показать нам ответ JSON и определение модели? – Izhaki
Добавлен код сейчас. – Babyangel