2013-05-08 3 views
0

Я нашел много примеров того, как загружать вложенные магазины JSON, когда дети являются другим типом модели, но я не нашел ни одного, показывающего, как делать то же самое если все дети одного типа. У меня есть JSON данные, как это:загрузка вложенного хранилища JSON того же типа

{ 
    "ID": "id213", 
    "Name": "ItemName", 
    "ChildElements": [ 
     { 
      "ID": "id321", 
      "Name": "ItemName2", 
      "ChildElements": [ //contains children ] 
     }, 
     { 
      "ID": "id32154", 
      "Name": "ItemName3",    
      "ChildElements": [ //contains children ] 
     } 
    ] 
} 

Моя модель выглядит следующим образом:

Ext.define('App.model.ElementsModel', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     { 
      name: 'Name' 
     } 
    ], 
    hasMany: { 
     model: 'ElementsModel', 
     name: 'ChildElements' 
     }, 
    proxy: { 
      type: 'ajax', 
      url: 'elements.json', 
      reader: { 
       type: 'json', 
       idProperty: 'ID' 
      } 
    } 
}); 

и когда я загружаю в магазин, не дочерние элементы не загружаются. Что я делаю не так?

ответ

0

Оказывается, мне нужно указать полное квалифицированное имя в качестве модели ассоциации:

hasMany: { 
     model: 'App.model.ElementsModel', 
     name: 'ChildElements' 
     }, 
Смежные вопросы