Господа проясните мне пожалста следующий вопрос — действительно ли наблюдаются глюки компонентов ModExtra-ExtJS или же я что-то недосмотрел?
Дело вот в чем. Я разрабатываю свой модуль для ModX, одно из пожеланий — редактирование контента (товара) из админки ModX. Конечно же первым делом смотрю в сторону ExtJS. Имею около 10ти простых таблиц (структура: id = ключ, name = название_параметра) и одну «главную» таблицу товара. У товара несколько характеристик, которые я хочу выбирать комбобоксами (MODx.combo.Combobox) которые, в свою очередь, представляют одну из 10ти таблиц. Код комбобоксов примерно такой:
Module.combo.Cat = function(config) {
config = config || {};
Ext.applyIf(config,{
name: 'name'
,editable: false
,displayField: 'name'
,valueField: 'id'
,fields: ['id','name']
,tpl: new Ext.XTemplate('<tpl for="."><div class="x-combo-list-item">{name}</div></tpl>')
,url: Module.config.connectorUrl
,baseParams:{
action: 'cat/getlist'
}
,allowBlank: true
});
Module.combo.Cat.superclass.constructor.call(this,config);
};
Ext.extend(Module.combo.Cat,MODx.combo.ComboBox);
Ext.reg('Module-combo-cat',Module.combo.Cat);
Остальные комбобоксы отличаются лишь action (выбор из различных таблиц). Далее имею форму для редактирования записи в гриде:
Module.mainpanel.grid1.editwin = function(config) {
config = config || {};
Ext.applyIf(config,{
id: 'Module-mainpanel-grid1-editwin'
,title: 'Редактировать товар'
,url: Module.config.connectorUrl
,baseParams: {
action: 'edit'
}
,width: 1000
,y: 10
,fields: [
{
xtype: 'hidden',
name: 'id'
},
{xtype: 'Module-combo-cat'
,fieldLabel: 'Категория товара'
,hiddenName: 'cat'
,name: 'cat'},
{xtype: 'Module-combo-type'
,fieldLabel: 'Тип товара'
,hiddenName: 'typ'
,name: 'typ'},
{xtype: 'Module-combo-cover'
,fieldLabel: '2я характеристика'
,hiddenName: 'cover'
,name: 'cover'},
{xtype: 'Module-combo-frame'
,fieldLabel: '3я характеристика'
,hiddenName: 'frame'
,name: 'frame'},
... еще около 7ми таких же комбобксов...
]
});
Module.mainpanel.grid1.editwin.superclass.constructor.call(this,config);
};
Ext.extend(Module.mainpanel.grid1.editwin,MODx.Window);
Ext.reg('Module-mainpanel-grid1-editwin',Module.mainpanel.grid1.editwin);
Если я редактирую запись выбирая параметры из комбобоксов то при сохранении у меня лепота — нужные значения вставляются в главную таблицу. Косяк в том, что при открытии окна редактирования:
1. значения в поля вставляются не сразу (где-то со 2й попытки, с 1й попытки наблюдаю «голое» окно);
2. значения в полях (особенно в комбобоксы) выставляются не все. В частности при вот этой форме у меня благополучно устанавливается 1й комбобокс, показывая нужное значение параметра, остальные пустые.
В чем может быть косяк?
Комментарии (0)