2013-02-20 10 views
5

Pracuję w extjs. Mam sklep jako -Jak używać tego samego sklepu z różnymi adresami URL w 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', 
       }}}); 

Tak więc właściwość odczytu proxy jest ustawiona powyżej adresu URL. Teraz chcę użyć tego samego sklepu dla innego widoku, ale z innym adresem URL do odczytu. Czy chcesz dynamicznie zmieniać adres URL magazynu? Próbowałem as- na przycisk kliknij zdarzenie chcę odczytać danych z URL miejsca /index.php/QuestionBank/qbpaper/Reviewquestionpaper111

itd funkcji przycisk click miałem napisane as-

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', 

     }); 

Mam utworzoną zmienną tego sklepu i podałem nowy wymagany adres URL. Bt nie działa. Sposób korzystania z tego samego sklepu dla różnych widoków z innym adresem URL w usłudze odczytu.

Odpowiedz

3

Można próbować się następująco:

QbqnsStore.proxy.url = 'new url'; 

i to się zmieni to czytać url.be pewien po zmianie adresu URL należy przeładować Store:

QbqnsStore.reload(); 
+0

Thanx sir za reply.i próbował jak wcześniej powiedział. Ale nie działa. Nie wywołuje tego nowo wstawionego adresu URL. – user2077845

+0

Czy ktoś może mi pomóc ... – user2077845

2

Można użyć tego kodu:

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

można po prostu zmienić czytać własność ob Ject proxy:

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

a następnie zadzwonić store.sync() lub store.load() metod.

Powiązane problemy