ExtJS. Запись данных методом grid.store.save(). Реально ли?

Здравствуйте!

Есть MODx.grid.Grid с данными, которые синхронятся с ComboBox. Если в Grid появляется что-то, то в ComboBox удаляется. То бишь мы кликнули на пункте в ComboBox — он появился в Grid, а из ComboBox удалился. Вопрос заключается в том, что надо после добавления нового пункта в Grid — сохранять данные. Точнее отправлять запрос на процессор, а там я уже сам разберусь. Чёт не пойму, как это делается… Точнее куда писать данные типа action, url, чтобы сообщить Grid/Store о моём процессоре работающем с сохранением данных?
Павел Гвоздь
26 декабря 2015, 00:34
modx.pro
1
2 121
+1
Поблагодарить автора Отправить деньги

Комментарии: 1

Павел Гвоздь
26 декабря 2015, 04:19
+1
Также не совсем понятно, как добавлять в Grid «на ходу», желательно в самое начало списка…

Вот код, которым сейчас добавляется пустая строка в 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 в консоль, после добавления:
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1