171 похожих чатов

Всем привет. Кто может подсказать как сгруппировать данные в гриде? Я

создал плагин на событие OnDocFormRender.
Добавил свою вкладку.
Создал объект грид.
Создал store (new Ext.data.JsonStore)
Подключил в гриде.
Все работает.
Теперь нужно сгруппировать данные.
Посмотрел как это сделано в manager/assets/modext/widgets/system/modx.grid.system.event.js
Добавил в грид параметры: grouping: true, groupBy: 'groupname', singleText: ‘test’, ,pluralText: ‘test’
Ничего не происходит и даже данные из самого стора не выводятся в грид.

Куда копать?

2 ответов

15 просмотров

там еще есть процессоры, которые данные отдают (например, https://github.com/modxcms/revolution/blob/2.x/manager/assets/modext/widgets/core/modx.grid.settings.js#L144), там же вся магия и происходит, как я понимаю

Вадим Семыкин- Автор вопроса

Готово. Может быть кому-то пригодится. Ext.onReady(function () { var resourceID = MODx.request.id; // id текущего ресурса var store_select_product = new Ext.data.GroupingStore({ proxy: new Ext.data.HttpProxy({url: '/assets/store/php/selectProduct.php'}), reader: new Ext.data.JsonReader({ root:'results', fields: ['id', 'code', 'category', 'product_name'] }), groupField: 'category', remoteGroup: true, autoLoad: false }); store_select_product.load({params: {resourceID: resourceID}}); var gridColumns = new Ext.grid.ColumnModel([ {dataIndex: 'id', width: 330, header: 'id'}, {dataIndex: 'code', width: 670, header: 'code'}, {dataIndex: 'category', width: 670, header: 'category'}, {dataIndex: 'product_name', width: 670, header: 'product_name'} ]); var gridGroups = new Ext.grid.GroupingView({ forceFit:true, //groupTextTpl: '{[ values.rs[0].data["category"] ]}', startCollapsed: false }); MODx.addTab("modx-resource-tabs", { id: 'products', title: 'Товары', bodyStyle: 'margin: 0', items: [{ html: 'Список товаров', anchor: '100%', xtype: 'modx-description', },{ xtype: 'grid', view: gridGroups, colModel: gridColumns, store: store_select_product, autoHeight: true, viewConfig: { forceFit: true, scrollOffset:0, enableRowBody: true, autoFill: true, showPreview: true, emptyText: 'В выбранной категории товары отсутствуют.', deferEmptyText: false }, stripeRows: true, // строки таблицы – зебра width: '100%', cls: 'main-wrapper' }] }) }); });

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта