У меня проблемы с передачей ExtJS4 строки запроса (параметр) с store.load - PullRequest
0 голосов
/ 14 июля 2011

У меня проблемы с передачей параметров в метод GetAll моего контроллера. Я попробовал фильтр, как показано ниже, но не повезло. какие-либо предложения?

Ext.define('AM.store.Sessions', {
    extend: 'Ext.data.Store',
    model: 'AM.model.Session',
    autoLoad: false,

    proxy: {
        type: 'ajax',
        api: {
            read: 'Session/GetAll',
            update: 'data/updateUsers.json'
        },
        reader: {
            type: 'json',
            root: 'Data',
            successProperty: 'success'
        },
        filters: [
            new Ext.util.Filter({
                    property: 'eyeColor',
                    value: 'brown'
                })
        ]
    }
});

1 Ответ

3 голосов
/ 14 июля 2011

Я не уверен, что вы после. Но указание extraParams в вашем прокси установит этот параметр при каждой загрузке () в вашем магазине. Как это.

Ext.define('AM.store.Sessions', {
    extend: 'Ext.data.Store',
    model: 'AM.model.Session',
    autoLoad: false,

    proxy: {
        type: 'ajax',
        api: {
            read: 'Session/GetAll',
            update: 'data/updateUsers.json'
        },
        extraParams:{
            eyeColor:'brown'
        } 
        reader: {
            type: 'json',
            root: 'Data',
            successProperty: 'success'
        }
    }
});

Вы также можете прослушать событие beforeLoad в хранилище и параметры там.

ИЛИ ... вы можете просто передать параметры в функцию load (), как это

var myStore = Ext.create('AM.store.Session');

myStore.load({
     params:{
         eyeColor:'brown'
     }
})
...