2013-02-20 102 views
5

我正在使用extjs。我有店 -如何在extjs中使用不同網址的同一商店

Ext.define('Balaee.store.qb.QbqnsStore',{ 
      extend: 'Ext.data.Store', 
      model: 'Balaee.model.qb.QbqnsModel', 
      autoLoad: true, 

      proxy: 
      { 
       type:'ajax', 
       api: 
       { 
     read:index.php/QuestionBank/qbpaper/createpaper', 

     }, 
       reader: 
       {type:'json', 
        //root:'polls',}, 
       writer: 
       {type:'json', 
        root:'data', 
       }}}); 

因此,代理的讀取屬性設置爲上述Url。現在,我想爲其他視圖使用同一商店,但使用不同的Url來讀取屬性。那麼如何動態更改商店的讀取URL?我曾試圖原樣 按鈕單擊事件我想讀於是就按一下按鈕功能從URL- /index.php/QuestionBank/qbpaper/Reviewquestionpaper111

數據我寫了原樣

review:function() 
    { 
     //alert("hello"); 

     var QbqnsStore=this.getStore('qb.QbqnsStore'); 
     proxy=QbqnsStore.getProxy(); 
     Ext.apply(proxy.api,{ 
      read:'http://127.0.0.1/s_balaee/Balaee/index.php/QuestionBank/qbpaper/Reviewquestionpaper', 

     }); 

我創建了該商店的變量並提供了新的必需URL。 Bt不起作用。 那麼如何在讀取屬性中將不同的視圖與不同的URL一起使用相同的商店。

回答

3

您可以嘗試如下:

QbqnsStore.proxy.url = 'new url'; 

和更改URL後這將改變它的閱讀url.be相信你應該重新加載您的商店:

QbqnsStore.reload(); 
+0

Thanx sir for reply.i按照您的說法嘗試過,但它沒有工作。它不調用這個新插入的URL。 – user2077845 2013-02-20 12:18:43

+0

有人可以幫我... – user2077845 2013-02-20 12:45:29

2

您可以使用此代碼:

var QbqnsStore=this.getStore('qb.QbqnsStore').load({url:'newUrl'}); 
0

您可以簡單地改變讀取OB的財產JECT 代理

var store = this.getStore('qb.QbqnsStore'); 
    proxy = store.getProxy(); 
    proxy.api.read = 'http://127.0.0.1/myNewUrl'; 

然後調用store.sync()store.load()方法。