ExtJS. Запись данных методом grid.store.save(). Реально ли?
Здравствуйте!
Есть MODx.grid.Grid с данными, которые синхронятся с ComboBox. Если в Grid появляется что-то, то в ComboBox удаляется. То бишь мы кликнули на пункте в ComboBox — он появился в Grid, а из ComboBox удалился. Вопрос заключается в том, что надо после добавления нового пункта в Grid — сохранять данные. Точнее отправлять запрос на процессор, а там я уже сам разберусь. Чёт не пойму, как это делается… Точнее куда писать данные типа action, url, чтобы сообщить Grid/Store о моём процессоре работающем с сохранением данных?
Есть MODx.grid.Grid с данными, которые синхронятся с ComboBox. Если в Grid появляется что-то, то в ComboBox удаляется. То бишь мы кликнули на пункте в ComboBox — он появился в Grid, а из ComboBox удалился. Вопрос заключается в том, что надо после добавления нового пункта в Grid — сохранять данные. Точнее отправлять запрос на процессор, а там я уже сам разберусь. Чёт не пойму, как это делается… Точнее куда писать данные типа action, url, чтобы сообщить Grid/Store о моём процессоре работающем с сохранением данных?
Поблагодарить автора
Отправить деньги
Комментарии: 1
Также не совсем понятно, как добавлять в Grid «на ходу», желательно в самое начало списка…
Вот код, которым сейчас добавляется пустая строка в Grid, но данных в ней не отображается… хотя в архитектуре объекта в консоли — новый объект добавлен.
Вот здесь вид Grid-а после метода grid.store.add(...):
А вот это вывод grid.store в консоль, после добавления:
Вот код, которым сейчас добавляется пустая строка в Grid, но данных в ней не отображается… хотя в архитектуре объекта в консоли — новый объект добавлен.
{
xtype: 'mycomponent-combo-product',
id: 'mycomponent-window-combo-product-'+ config.id,
name: 'product_select',
listeners:
{
select: function(combo, row)
{
var grid = Ext.getCmp('mycomponent-window-grid-products');
if( typeof grid == 'undefined' ) {return}
var TopicRecord = Ext.data.Record.create([
{name: 'id', mapping: 'id', type: 'int'},
{name: 'type', mapping: 'type', allowBlank: false},
{name: 'pagetitle', mapping: 'pagetitle'},
{name: 'resource_id', mapping: 'resource_id', type: 'int'},
]);
var myNewRecord = new TopicRecord(
{
id: '',
type: 'product',
pagetitle: row.pagetitle,
resource_id: row.id,
});
grid.store.add(myNewRecord);
},
},
},
Вот здесь вид Grid-а после метода grid.store.add(...):
А вот это вывод grid.store в консоль, после добавления:
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.