Проблема при использовании Store.add()
Добрый день.
Использую ext-4.0.0.
Задача: сформировать содержание Grid.Panel из данных, частично полученных с сервера через AJAX,
а частично прямо из кода, программно.
Фрагмент кода:
Ext.define('ActionDepartModel', {
extend: 'Ext.data.Model',
idProperty: 'iddept',
fields: [{
name: 'title',
type: 'string'
}]
});
Ext.define('ActionDepartStore', {
extend: 'Ext.data.Store',
autoLoad: false,
model:'ActionDepartModel',
proxy: {
type: 'ajax',
url: 'action.php'
}
});
Ext.define('ActionDepartListPanel', {
extend: 'Ext.grid.Panel',
alias: 'widget.ActionDepartListView',
autoScroll: true,
region:'center',
store: Ext.create('ActionDepartStore'),
title: 'Подразделения',
hideHeaders: true,
selModel: {
mode: 'MULTI'
},
columns: [{
flex: 1,
dataIndex: 'title'
}]
});
При выполнении ActionDepartListPanel.getStore().load() в Store формируется массив данных типа
[ {internalId:1, data.title:'подразделение 1'},
{internalId:2, data.title:'подразделение 2'},
{internalId:3, data.title:'подразделение 3'}
]
И это хорошо.
При выполнении ActionDepartListPanel.getStore().add(
{iddept:4, title:'подразделение 4'},
{iddept:5, title:'подразделение 5'}
);
в Store формируется массив данных типа
[ {internalId:1, data.title:'подразделение 1'},
{internalId:2, data.title:'подразделение 2'},
{internalId:3, data.title:'подразделение 3'},
{internalId:'ext-record-1', data.title:'подразделение 4'},
{internalId:'ext-record-2', data.title:'подразделение 5'}
]
Вопрос: как в коде, программно (без обращения к серверу) добавить записи в Store так,
чтобы у них сформировались нормальные internalId, из поля, описанного в Model.idProperty?
Спасибо.
|