1. 程式人生 > >動態改變Store的請求URL

動態改變Store的請求URL


//建立一個store
    var create_privilege_store = new Ext.data.JsonStore({
                id : 'create_privilege_store',
                root : 'root',
                totalProperty : 'totalCount',
                url : '#',
                fields : [{
                            name : 'card_id',
                            mapping : 'card_id'
                        }, {
                            name : 'door_id',
                            mapping : 'door_id'
                        }, {
                            name : 'device_id',
                            mapping : 'device_id'
                        }, {
                            name : 'validend',
                            mapping : 'validend',
                            type : 'date',
                            convert : function(v, r) {
                                if (!!r.validend) {
                                    return new Date(r.validend).format("Y-m-d");
                                }
                                return '--';
                            }
                        }, {
                            name : 'access_id',
                            mapping : 'access_id'
                        }, {
                            name : 'device_name',
                            mapping : 'device_name'
                        }, {
                            name : 'dept_name',
                            mapping : 'dept_name'
                        }, {
                            name : 'card_index',
                            mapping : 'card_index'
                        }, {
                            name : 'user_name',
                            mapping : 'user_name'
                        }, {
                            name : 'card_type',
                            mapping : 'card_type',
                            convert : function(v, r) {
                                switch (r.card_type) {
                                    case 0 :
                                        return 'M1卡';
                                        break;
                                    case 1 :
                                        return '2.4G手機卡';
                                        break;
                                    case 2 :
                                        return 'EPC卡';
                                        break;
                                    case 3 :
                                        return 'ID卡';
                                        break;
                                    case 4 :
                                        return 'NFC卡';
                                        break;
                                    case 5 :
                                        return 'CPU卡';
                                        break;
                                    default :
                                        return '未知';
                                        break;
                                }
                            }
                        }, {
                            name : 'employee_id',
                            mapping : 'employee_id'
                        }, {
                            name : 'station',
                            mapping : 'station'
                        }, {
                            name : 'subname',
                            mapping : 'subname'
                        }, {
                            name : 'roomName',
                            mapping : 'roomName'
                        }, {
                            name : 'flag',
                            mapping : 'flag',
                            convert : function(v, r) {
                                switch (r.flag) {
                                    case 0 :
                                        return '未下發';
                                    case 1 :
                                        return '已下發';
                                }
                            }
                        }],
                autoLoad : false,
                listeners : {
                    load : function() {
                        create_privilege_sm.selectAll();
                    }
                }
            });   


//通過下面這句話就可以實現動態改變url
create_privilege_store.proxy = new Ext.data.HttpProxy({
                            url : '#.do'
                        });
                Ext.getCmp('query_privilege_grid').getStore().baseParams = {
                    card_id : card_ids,
                    door_id : door_ids
                };