Model view controller ExtJS 4-如何从MVC中的视图访问多个存储?

Model view controller ExtJS 4-如何从MVC中的视图访问多个存储?,model-view-controller,grid,extjs4,Model View Controller,Grid,Extjs4,我正在尝试使用新的MVC方法在ExtJS4中构建一个应用程序。 我有一个网格,用户可以在其中单击行上的,然后编辑完成Ext.window。 此带有选项卡的Ext.window在控制器中定义为视图。我有两个问题: 1)该窗口有两个网格,我希望在单击选项卡时从商店填充。在定义网格的存储时,我无法访问它,即使它在我的控制器中被拒绝。我试过了 ... xtype:'grid', store:MyApp.store.Products columns:[..] ... 但是没有运气 还尝试为视图定义多个

我正在尝试使用新的MVC方法在ExtJS4中构建一个应用程序。 我有一个网格,用户可以在其中
单击行上的
,然后编辑完成
Ext.window。

此带有选项卡的
Ext.window
在控制器中定义为视图。我有两个问题:


1)该窗口有两个网格,我希望在单击选项卡时从商店填充。在定义网格的存储时,我无法访问它,即使它在我的控制器中被拒绝。我试过了

...
xtype:'grid',
store:MyApp.store.Products
columns:[..]
...
但是没有运气

还尝试为视图定义多个存储:

Ext.define('MyApp.view.Edit', {
    extend:'Ext.window.Window',
    store:['Products','Countries']
...
但也没有运气。如果我在视图中只定义了一个存储,我可以使用
this.Countries
访问它


2)我的第二个问题部分相关
Ext.window
是一个表单,其中填充了单击的网格行中的数据

如何使用推送到Ext.window窗体中的数据填充其中一个网格?默认情况下,它是否应该有一个空存储,然后在
选项卡click
上有一个侦听器?或者我可以将数据对象推入其中吗


感谢您的帮助

要回答第一个问题,您需要参考控制器中的存储。您可以在控制器中执行类似操作

stores  : ['Products', 'Countries'],

models  : ['Products', 'Countries'],

refs: [
    {ref: 'mytabpanel', selector: 'mytabs'}
],

 init: function() {
    this.control({
        'mytabs': {
            tabchange       : this.loadTabData
        },

     //create a onProductsStoreLoad method to handle stuff
     this.getProductsStore().on({
        scope: this,
        load : this.onProductsStoreLoad
    });


loadTabData: function() {
   var activeTab = this.getMytabpanel().getActiveTab();
   //Do whatever you need
}

非常感谢。逻辑部分确实需要转到控制器。