Пример хранилища:
/**
* Приложения
* @class Core.store.applications
*/
Ext.define('Core.store.applications', {
extend: 'Ext.data.Store',
alias: 'store.applications',
storeId: 'applications',
model: 'Core.model.applications',
remoteSort: true,
remoteGroup: true,
sorters: [{ // сортировка по умолчанию
"property": "name",
"direction": "desc"
}],
remoteFilter: true,
proxy: {
type: 'direct',
api: {
create: 'PN.applications.Add',
read: 'PN.applications.Query',
update: 'PN.applications.Update',
destroy: 'PN.applications.Delete'
},
reader: { // соответствует формату запроса
rootProperty: 'records',
successProperty: 'success',
totalProperty: 'total'
},
writer: {
dateFormat: "Y-m-d H:i:sO"
}
}
});
Примечания:
- требуется обязательно указывать alias, а значение его должно соответствовать формату store.[наименование файла в нижнем регистре]
- storeId идентификатор хранилища — [наименование файла в нижнем регистре]
- по умолчанию должно быть включена фильтрация на сервер remoteFilter:true
- по умолчанию должно быть включена сортировка на сервере remoteSort:true
- по умолчанию должно быть включена группировка на сервере remoteGroup:true
- тип прокси должен быть direct (собственный компонент, является наследником Ext.data.proxy.Direct)
- заполнить все api. Значения параметров должны быть обязательно строковыми значениями
- в свойстве proxy.writer.dateFormat указывается формат даты который будет приходить на сервер