Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.11.2014, 14:43
Новичок на форуме
Отправить личное сообщение для Gura Посмотреть профиль Найти все сообщения от Gura
 
Регистрация: 24.11.2014
Сообщений: 2

Не отображаются данные дерева
Добрый день. Пытаюсь загрузить данные в дерево:

Ext.define('treeModel',{
       extend: 'Ext.data.Model',
       fields:[
           {
               name:'pk_id',
               type:'int'
           },
           {
               name:'parent_id',
               type:'int'
           },
           {
               name:'tree_value',
               type:'string'
           }
       ]
    });
    
    var store = Ext.create('Ext.data.TreeStore', {
        model: 'treeModel',
        root: {
            text: 'Организации',
            expanded: true
        },
        autoLoad: true,
        proxy:{
            type: 'ajax',
            url:'/air/data/get_object/tree',
            reader: {
                type: 'json'
            }
        }
    });
    
    Ext.create('Ext.tree.Panel', {
        title: 'Организации',
        width: 200,
        height: 200,
        store: store,
        rootVisible: true,
        renderTo: Ext.getBody()
    });


Но в результате данные не отображаются, хотя json верный (а может и нет)
http://javascript.ru/forum/attachmen...d=141682914 6

Вот json
[{"level":1,"pk_id":1,"parent_id":null,"tree_value":"Организации"},
{"level":2,"pk_id":6209,"parent_id":1,"tree_value":"МП \"Районные электрические сети\""},{"level":3,"pk_id":6722,"parent_id":6209,"tree_value":"Отчет за 2014"}]



В чем может быть проблема? Почему не отображается текст?
И может кто - нибудь знает, что нужно добавить, чтобы дерево было динамическим?

Спасибо!
Изображения:
Тип файла: png Безымянный.png (3.4 Кб, 3 просмотров)

Последний раз редактировалось Gura, 24.11.2014 в 14:45.
Ответить с цитированием
  #2 (permalink)  
Старый 25.11.2014, 11:12
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

как extjs должен догадаться в каком поле у вас что лежит?

есть дефолтные имена полей которые ждет ext, для заголовка узла это поле text ..и собственно для корня вы используете text а для прочих узлов уже tree_value.

если 'pk_id' первичный ключ то надо его указать в конфиг idProperty модели.

идентификатор родителя при загрузке дерева не нужен.
если вам надо грузить дерево асинхронно при раскрытии узла просто возвращайте массив детей первого уровня.
на каждый expand будет дергаться запрос.
http://www.sencha.com/forum/showthre...s-tree-loading
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
grid + store не отображаются данные treasury ExtJS 2 09.09.2014 20:59
не отправляются данные XMLHttpRequest() sinefighter Events/DOM/Window 2 05.07.2014 18:05
JSON данные принять на стороне клиента tenatin Общие вопросы Javascript 5 05.03.2014 16:32
Как подгрузить данные с чужого домена, XSS-proof? Actine AJAX и COMET 6 03.09.2011 22:08
Не совсем обычный фрейм и выезжающий текст при наводе на картинку. amaz245 Элементы интерфейса 35 25.12.2010 17:29