| 
	
	
		
		
			
			 
				Проблема при использовании 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? 
 
Спасибо. 
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 |