Rest extjs4代理存储don';t使用交付的数据

Rest extjs4代理存储don';t使用交付的数据,rest,extjs,store,extjs4.1,Rest,Extjs,Store,Extjs4.1,我有两个网格,每个网格都有自己的代理存储。每个存储绑定到具有以下定义的同一模型: Ext.define('Issue', { extend: 'Ext.data.Model', fields : [{ name : 'updated_on', type : 'string' }, { name : 'done_ratio', type : 'int' }, { name : 'star

我有两个网格,每个网格都有自己的代理存储。每个存储绑定到具有以下定义的同一模型:

Ext.define('Issue', {
    extend: 'Ext.data.Model',
    fields : [{
        name : 'updated_on',
        type : 'string'
    }, {
        name : 'done_ratio',
        type : 'int'
    }, {
        name : 'start_date',
        type : 'string'
    }, {
        name : 'subject',
        type : 'string'
    }, {
        name : 'due_date',
        type : 'string'
    }, {
        name : 'created_on',
        type : 'string'
    }, {
        name : 'description',
        type : 'string'
    }, {
        name : 'id',
        type : 'int'
    }, {
        name : 'assigned_to',
        mapping: 'assigned_to.name'
    }, {
        name: 'parked',
        mapping: 'custom_fields[9].value',
        type: 'boolean'
    }]
});
存储其网格和相关容器按钮等是在函数中创建的。这两个函数看起来像:

var createMyPanel = function() {
        var store = new Ext.data.Store({
            /*sorters: ['gemeinde','assigned_to'],
            groupField: 'gemeinde',*///comment in when want enable grouping
            model : 'Issue',
            autoLoad: true,
            autoSync: true,
            proxy : {
                type : 'rest',
                url : '/issues.json',
                reader : {
                    type : 'json',
                    root : 'issues'
                },
                extraParams : runtime.CView.Model.getParams('my')
            }
        });
        var groupingFeature = new Ext.grid.feature.Grouping({
            groupHeaderTpl: 'Gemeinde: {name} ({rows.length})'
        });
        var searching = new Ext.ux.grid.feature.Searching({
            minChars: 3,
            mode: 'local',
            searchText: 'Suche einschränken',
            selectAllText: 'Alle Felder (ab)wählen',
            searchTip: '',
            minCharsTipText: 'Bitte mindestens 3 Zeichen eingeben...',
            width: 200
        });
        var commentBtn = new Ext.Button({
            text: 'Kommentar zum gewählten Ticket erfassen',
            disabled: true,
            ticket: null,
            margin: 5
        });
        var toGfBtn = new Ext.Button({
            text: 'an GIS-Fachstelle melden',
            disabled: true,
            ticket:null,
            margin: 5
        });
        var abbruchBtn = new Ext.Button({
            text: 'als abgebrochen melden',
            disabled: true,
            ticket:null,
            margin: 5
        });
        var parkBtn = new Ext.Button({
            text: 'Ticket zurücklegen',
            disabled: true,
            ticket:null,
            margin: 5
        });
        var journalPanel = new Ext.Panel({
            title: 'Kommentare',
            html:'',
            border: false,
            autoScroll: true,
            flex: 30,
            padding: '5 5 5 5'
        });
        var buttonPanel = new Ext.Panel({
            padding: '30 30 10 30',
            border: false,
            flex: 20,
            layout: {
                type: 'vbox',
                align: 'stretch'
            },
            items:[toGfBtn, commentBtn, abbruchBtn, parkBtn]
        });
        var contentPanel = new Ext.Panel({
            title : 'Beschreibung',
            border: false,
            html:'',
            flex: 50,
            padding: '5 5 5 5'
        });
        var southPanel = new Ext.Panel({
            padding: '0 0 5 0',
            layout: {
                type: 'hbox',
                align: 'stretch'
            },
            flex: 30,
            items:[contentPanel, journalPanel, buttonPanel]
        });

        var grid = new Ext.grid.Panel({
            store : store,
            autoScroll : true,
            flex: 70,
            columns : [{
                        text : 'Ticket-Nummer',
                        width : 100,
                        sortable : true,
                        dataIndex : 'id',
                        menuDisabled : true
                    }, {
                        text : 'Abgabe-Datum',
                        sortable : true,
                        width : 100,
                        dataIndex : 'due_date',
                        menuDisabled : true
                    }, {
                        header : 'Thema',
                        width : 200,
                        sortable : true,
                        dataIndex : 'subject',
                        renderer : function(val) {
                            return '<div style="white-space:normal !important;">'
                                    + val + '</div>';
                        },
                        menuDisabled : true
                    }, {
                        header : 'Gemeinde',
                        width : 200,
                        sortable : true,
                        dataIndex : 'gemeinde',
                        menuDisabled : true

                    }, {
                        header : 'Parzelle',
                        width : 200,
                        sortable : true,
                        dataIndex : 'parzelle',
                        menuDisabled : true

                    }, {
                        header : 'zurückgelegt',
                        width : 200,
                        sortable : true,
                        dataIndex : 'parked',
                        menuDisabled : true,
                        renderer : function(val) {
                            if(val){
                                return 'Ja';
                            }else{
                                return 'Nein';
                            }
                        },
                    },{
                        header: 'Beschreibung',
                        dataIndex: 'description',
                        hidden: true,
                        menuDisabled : true
                    }],
            bbar: ['->'],
            features: [searching/*, groupingFeature*/],//comment this in when want to group
            selModel: new Ext.selection.RowModel()
        });

        var myPanel = new Ext.Panel({
            title: 'Meine Fälle',
            padding: '0 5 0 5',
            bl_id:'my',
            layout: {
                type: 'vbox',
                align: 'stretch'
            },
            items : [grid, southPanel]
        });
        return {
            that : myPanel,
            contentPanel: contentPanel,
            grid: grid,
            store: store,
            toGfBtn:toGfBtn,
            journalPanel:journalPanel,
            commentBtn:commentBtn,
            southPanel:southPanel,
            abbruchBtn:abbruchBtn,
            parkBtn:parkBtn
        }
    };
var createMyPanel=function(){
var store=新的Ext.data.store({
/*分拣机:['gemeinde','assigned_to'],
groupField:'gemeinde',*///需要启用分组时在中添加注释
模式:"问题",,
自动加载:对,
自动同步:对,
代理:{
键入:“rest”,
url:“/issues.json”,
读者:{
键入:“json”,
根:“问题”
},
extraParams:runtime.CView.Model.getParams('my')
}
});
var groupingFeature=new Ext.grid.feature.Grouping({
groupHeaderTpl:'Gemeinde:{name}({rows.length})'
});
var search=new Ext.ux.grid.feature.search({
明查斯:3,
模式:“本地”,
搜索文本:“Suche einschränken”,
选择AllText:'Alle Felder(ab)wählen',
搜索提示:“”,
minCharsTipText:“三个Zeichen-eingeben…的比特明德斯特恩斯”,
宽度:200
});
var commentBtn=新建外部按钮({
文字:“Kommentar zum gewählten Ticket erfassen”,
残疾人:对,,
票证:空,
保证金:5
});
var toGfBtn=新外部按钮({
文字:“地理信息系统Fachstelle melden”,
残疾人:对,,
票证:空,
保证金:5
});
var abbruchBtn=新外部按钮({
文字:“als abgebrochen melden”,
残疾人:对,,
票证:空,
保证金:5
});
var parkBtn=新外部按钮({
文字:“票子zurücklegen”,
残疾人:对,,
票证:空,
保证金:5
});
var journalPanel=新的外部面板({
标题:“Kommentare”,
html:“”,
边界:错,
autoScroll:是的,
弹性:30,
填充:“5”
});
var buttonPanel=新的外部面板({
填充:“30 10 30”,
边界:错,
弹性:20,
布局:{
键入:“vbox”,
对齐:“拉伸”
},
项目:[toGfBtn、commentBtn、abbruchBtn、parkBtn]
});
var contentPanel=新的外部面板({
标题:“Beschreibung”,
边界:错,
html:“”,
弹性:50,
填充:“5”
});
var southPanel=新的外部面板({
填充:“0 0 5 0”,
布局:{
类型:“hbox”,
对齐:“拉伸”
},
弹性:30,
项目:[内容面板、日志面板、按钮面板]
});
var grid=新的Ext.grid.Panel({
店:店,,
autoScroll:是的,
弹性:70,
栏目:[{
文本:“票证编号”,
宽度:100,
可排序:是的,
数据索引:“id”,
menuDisabled:对
}, {
文本:“Abgabe基准面”,
可排序:是的,
宽度:100,
数据索引:“到期日”,
menuDisabled:对
}, {
标题:“Thema”,
宽度:200,
可排序:是的,
数据索引:“主题”,
渲染器:函数(val){
返回“”
+val+'';
},
menuDisabled:对
}, {
标题:“Gemeinde”,
宽度:200,
可排序:是的,
数据索引:“gemeinde”,
menuDisabled:对
}, {
标题:“Parzelle”,
宽度:200,
可排序:是的,
数据索引:“parzelle”,
menuDisabled:对
}, {
标题:“zurückgelegt”,
宽度:200,
可排序:是的,
dataIndex:'停放',
menuDisabled:没错,
渲染器:函数(val){
if(val){
返回“Ja”;
}否则{
返回“不”;
}
},
},{
标题:“Beschreibung”,
数据索引:“说明”,
隐藏:是的,
menuDisabled:对
}],
bbar:['->'],
功能:[搜索/*,分组功能*/],//在需要分组时对此进行注释
selModel:new Ext.selection.RowModel()
});
var myPanel=新的外部面板({
标题:“Meine Fälle”,
填充:“0 5 0 5”,
bl_id:“我的”,
布局:{
键入:“vbox”,
对齐:“拉伸”
},
项目:[网格,南面板]
});
返回{
我的小组,
contentPanel:contentPanel,
网格:网格,
店:店,,
toGfBtn:toGfBtn,
journalPanel:journalPanel,
commentBtn:commentBtn,
南潘
var createAllPanel = function() {
    var store = new Ext.data.Store({
        /*sorters: ['gemeinde','assigned_to'],
        groupField: 'gemeinde',*///comment in when want enable grouping
        model : 'Issue',
        autoLoad: true,
        autoSync: true,
        proxy : {
            type : 'rest',
            url : '/issues.json',
            reader : {
                type : 'json',
                root : 'issues'
            },
            extraParams : runtime.CView.Model.getParams('all')
        }
    });
    var groupingFeature = new Ext.grid.feature.Grouping({
        groupHeaderTpl: 'Gemeinde: {name} ({rows.length})'
    });
    var searching = new Ext.ux.grid.feature.Searching({
        minChars: 3,
        mode: 'local',
        searchText: 'Suche einschränken',
        selectAllText: 'Alle Felder (ab)wählen',
        searchTip: '',
        minCharsTipText: 'Bitte mindestens 3 Zeichen eingeben...',
        width: 200
    });
    var commentBtn = new Ext.Button({
        text: 'Kommentar zum gewählten Ticket erfassen',
        disabled: true,
        ticket: null,
        margin: 5
    });
    var toGfBtn = new Ext.Button({
        text: 'an GIS-Fachstelle melden',
        disabled: true,
        ticket:null,
        margin: 5
    });
    var abbruchBtn = new Ext.Button({
        text: 'als abgebrochen melden',
        disabled: true,
        ticket:null,
        margin: 5
    });
    var parkBtn = new Ext.Button({
        text: 'Ticket zurücklegen',
        disabled: true,
        ticket:null,
        margin: 5
    });
    var journalPanel = new Ext.Panel({
        title: 'Kommentare',
        html:'',
        border: false,
        autoScroll: true,
        flex: 30,
        padding: '5 5 5 5'
    });
    var buttonPanel = new Ext.Panel({
        padding: '30 30 10 30',
        border: false,
        flex: 20,
        layout: {
            type: 'vbox',
            align: 'stretch'
        },
        items:[toGfBtn, commentBtn, abbruchBtn, parkBtn]
    });
    var contentPanel = new Ext.Panel({
        title : 'Beschreibung',
        border: false,
        html:'',
        flex: 50,
        padding: '5 5 5 5'
    });
    var southPanel = new Ext.Panel({
        padding: '0 0 5 0',
        layout: {
            type: 'hbox',
            align: 'stretch'
        },
        flex: 30,
        items:[contentPanel, journalPanel, buttonPanel]
    });

    var grid = new Ext.grid.Panel({
        store : store,
        autoScroll : true,
        flex: 70,
        columns : [{
                    text : 'Ticket-Nummer',
                    width : 100,
                    sortable : true,
                    dataIndex : 'id',
                    menuDisabled : true
                }, {
                    text : 'Abgabe-Datum',
                    sortable : true,
                    width : 100,
                    dataIndex : 'due_date',
                    menuDisabled : true
                }, {
                    header : 'Thema',
                    width : 200,
                    sortable : true,
                    dataIndex : 'subject',
                    renderer : function(val) {
                        return '<div style="white-space:normal !important;">'
                                + val + '</div>';
                    },
                    menuDisabled : true
                }, {
                    header : 'Gemeinde',
                    width : 200,
                    sortable : true,
                    dataIndex : 'gemeinde',
                    menuDisabled : true

                }, {
                    header : 'Parzelle',
                    width : 200,
                    sortable : true,
                    dataIndex : 'parzelle',
                    menuDisabled : true

                }, {
                    header : 'zugewiesen an',
                    width : 200,
                    sortable : true,
                    dataIndex : 'assigned_to',
                    menuDisabled : true
                }, {
                    header : 'zurückgelegt',
                    width : 200,
                    sortable : true,
                    dataIndex : 'parked',
                    menuDisabled : true,
                    renderer : function(val) {
                        if(val){
                            return 'Ja';
                        }else{
                            return 'Nein';
                        }
                    },
                },{
                    header: 'Beschreibung',
                    dataIndex: 'description',
                    hidden: true,
                    menuDisabled : true
                }],
        bbar: ['->'],
        features: [searching/*, groupingFeature*/],//comment this in when want to group
        selModel: new Ext.selection.RowModel()
    });

    var allPanel = new Ext.Panel({
        title: 'Alle Fälle',
        padding: '0 5 0 5',
        bl_id:'all',
        layout: {
            type: 'vbox',
            align: 'stretch'
        },
        items : [grid, southPanel]
    });
    return {
        that : allPanel,
        contentPanel: contentPanel,
        grid: grid,
        store: store,
        toGfBtn:toGfBtn,
        journalPanel:journalPanel,
        commentBtn:commentBtn,
        southPanel:southPanel,
        abbruchBtn:abbruchBtn,
        parkBtn:parkBtn
    }
};