Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   extjs grid + mysql (https://javascript.ru/forum/extjs/32452-extjs-grid-mysql.html)

Jeka57 16.10.2012 20:52

extjs grid + mysql
 
Здравствуйте! Помогите пожалуйста с моим вопросом. В двух словах мне нужно будет в итоге приложение для вывода данных из базы mysql, таблиц много, они все связаны. Также требуется возможность редактирования, вывод на печать результата фильтрации данных, добавления новых записей. Посмотрев примеры, понял что вроде extjs мне должен подойти и всё возможно реализовать.
Начав делать, смог вывести данные из базы, а вот с редактированием возникла проблема, есть ли пример работы extjs именно с базой mysql, т.к. с теми примерами что на оф сайте я не могу ничего понять.
Ко всему этому я так и не нашел как же вывести связанные данные из подчиненных таблиц, подскажите :blink:
Заранее огромное спасибо за помощь!

DjDiablo 26.10.2012 14:27

опишите подробнее задачу, если ещё не поздно
тут очень много особенностей

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

Jeka57 29.10.2012 23:25

Со связанными таблицами разобрался, inner join помог.
Добавлять в главную таблицу запись я так понял можно используя для полей, которые связаны с другими подчиненными таблицами, comboboxы заполненными из подчиненных таблиц. Правда до этого еще не добрался.
Вот сейчас не могу разобраться как сделать меню из treepanel, заполнил его из json файла, добавил listener и click, вот часть кода:
children: [{
    text:'Компьютерная техника',
    expanded: true,
    children:[{
        text:'Компьютеры',
        id:'computers',
        leaf:true,
		listeners:{
		click: function(){
     		var
			regionCenter = vp.getLayout().centerRegion.down("panel");

			regionCenter.removeAll();
			regionCenter.add(grid)
   }
}
    },{
        text:'Принтеры',
        id:'printers',
        leaf:true
    }]
}

но при клике ничего не происходит

Ex_Soft 30.10.2012 16:15

У Ext.data.NodeInterface нЭт события click. Впрочем, как и у Ext.tree.Panel. Юзайте Ext.tree.Panel'ный itemclick

P.S. BTW,
> заполнил его из json файла, добавил listener и click
В json'е м.б. только данные, которые читаются reader'ом, который не может от'eval'ить Ваш listener.

xammett 26.11.2012 19:19

Jeka57,я сам недавно искал подобные примеры и нашел хороший пример с крудом.Вот держи,может быть он тебе поможет.
https://github.com/ErnestoR/Extjs4_PHP_MySQL


Часовой пояс GMT +3, время: 19:05.