2011-05-25 64 views
1

有沒有一種方法來按需加載不同的json文件(單擊),以某種方式更改URL。相同的商店,相同的模型,只需更改url和load()。加載兩個不同的json與同一商店

Ext.define('app.gridStore', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     'name', 'email', 'phone' 
    ] 
}); 

var myStore =Ext.create('Ext.data.Store', { 
    model: 'app.gridStore', 
    proxy: { 
     type: 'ajax', 
     url : 'app/kontaktGrid.json', 
     reader:{ 
      type:'json', 
      root: 'items' 
     } 
    } 


}); 

buttons: [{ 
    text: 'Load1', 
    handler:function(){ 

    myStore.load().url('app/kontaktGrid1.json'); 

    } 
    },{ 
    text: 'Load2', 
    handler:function(){ 

    myStore.load('app/kontaktGrid2.json');-- 

返回POST 405不允許的方法

} 
}] 

回答

1

兩個myStore.load().url('app/kontaktGrid1.json');myStore.load('app/kontaktGrid2.json');沒有爲retriving數據更新存儲URL。

爲了更新網址,你需要做到以下幾點:

myStore.getProxy().url = "/new-url"; 
myStore.load(); 

第一條語句修改商店的代理URL。然後調用load(),將新數據加載到商店。

+0

rulez!非常感謝你,兩個兩個... ;-) – 2011-05-25 08:36:45

+0

你可以告訴我如何將這些數據發送到我的網格嗎?請! – 2011-05-25 12:50:28

+0

@Ingol,加載商店應該照顧那個 – 2011-05-25 14:39:41