Мне нужно создать фильтр в магазине, чтобы только в моем поле со списком приходили значения, которые main_type равны 0.
Это мой компонент Ext Js:
{
xtype: 'combobox',
name: 'main_sector',
fieldLabel: 'Principal',
displayField: 'name',
valueField: 'id',
labelAlign: 'top',
margin: { left: 3},
store: 'company.EconomicActivity',
inputWidth: 120,
editable: true,
queryMode: 'local',
id: "main_sector_combo",
disabled: true
}
И вот у меня есть мой внутренний контроллер, где я выполняю условия фильтрации:
protected function _filterConditions($property, $value, $table, $adp) {
switch ($property) {
case 'id':
return $adp->quoteInto('id = ?', (int)$value);
break;
case 'owner_id':
return $adp->quoteInto('owner_id = ? OR owner_id is null', (int)$value);
break;
case 'number':
return $adp->quoteInto('number = ?', (int)$value);
break;
case 'name':
return $adp->quoteInto('name ILIKE ?', '%' . $value . '%');
break;
}
return null;
}
И вот у меня есть мой внешний контроллер, где я делаю фильтры:
var sectorStore = Ext.getStore('company.EconomicActivity');
sectorStore.clearFilter(true);
var filters = [
{ id : 'number', property : "number", value : 0}
];
sectorStore.load({
filters: filters,
scope: this,
});
Этомой магазин:
Ext.define('S1.store.company.EconomicActivity', {
extend: 'Ext.data.Store',
autoLoad: true,
model: 'S1.model.company.EconomicActivity',
proxy: 'companyeconomicactivity',
storeId: 'companyeconomicactivity',
pageSize: 40,
remoteFilter: true,
remoteSort: true,
remoteGroup: true,
sorters: [
{
property: 'main_sector',
direction: 'ASC'
}
]
});
но он не работает, у кого-нибудь есть идеи?