dstore эквивалент dojo/store/JsonRest
: dstore/Rest
(однако, если у вас нет соответствующего REST API на сервере, вы можете использовать dstore/Request
).
Метод dstore's filter
позволяет делать произвольные запросы. Он возвращает коллекцию с любыми применяемыми фильтрами, хранящимися, чтобы их можно было включать, когда вызывается fetch
или fetchRange
.
var store = new Request({ target: '/path/to/service' });
var filteredCollection = store.filter({ y: 2015, m: 5 });
filteredCollection.fetch();
приведет к следующему запроса HTTP:
/path/to/service?y=2015&m=5
Чтобы использовать эту функцию с dgrid 0,4, вы бы присвоить отфильтрованную коллекцию экземпляра сетки (и dgrid будет обрабатывать вызов fetch/fetchRange
по мере необходимости) :
grid.set('collection', store.filter({y: year, m: month}));
dgrid 0.4 и dstore представляют значительный сдвиг в том, как сетка взаимодействует с магазином. В dgrid 0.3 сетка имела гораздо более активную роль в управлении состоянием запроса в хранилище - с dgrid 0.4, это уже не так (отсюда удаление метода setQuery
). В dgrid 0.4 для кода логики, связанной с фильтрацией данных хранилища, требуется код, внешний по отношению к сетке. В то время как в dgrid 0.3 вы обычно устанавливаете свойство сетки за один раз и звоните setQuery
всякий раз, когда вам нужно отфильтровать данные, с dgrid 0.4 вы устанавливаете свойство collection
в любое время, необходимое для обновления фильтрации. В магазине dstore Request
вы можете настроить имена параметров для фильтрации range
и sort
.