Показать сообщение отдельно
  #3 (permalink)  
Старый 16.08.2013, 11:45
Профессор
Отправить личное сообщение для novikov Посмотреть профиль Найти все сообщения от novikov
 
Регистрация: 19.11.2012
Сообщений: 178

Не тестировал это решение для вашего случая, но связанные модели здесь, как мне кажется не нужны. Лучше попробовать извлекать данные в нужное поле при помощи функции, переданой в параметре convert настроек поля.

Ext.define('MyTreeItemModel', {
   extend: 'Ext.data.TreeModel',
    proxy: {
       type: 'rest',
       url: '/omnireports/ajaxgrid',
       reader: {
          type: 'json'//,
          //root: 'Statistic'
       }
     },
     fields: [
         { 
               name: 'text', 
               convert(value, record) {
                    if (record.data.Specialist) {
                         return record.data.Specialist;
                    }
                    if (record.data.WorkGroup) {
                         return record.data.WorkGroup;
                    }
              }
         }
    ]
})


Если нет желания менять серверный код, то подготовить данные к вставке в Ext.data.TreeStore можно и на клиенте. У библиотеки есть необходимые средства. Загрузка в стор затем через loadData(). Элегеантно или нет такое решение, судить вам.

Последний раз редактировалось novikov, 16.08.2013 в 12:21.
Ответить с цитированием