2012-01-27 1 views
0

Я определил модель, которую я хочу использовать дважды, но с другим url int pro proxy (на самом деле только идентификатор отличается) Но как я могу это сделать?Модель ExtJs4 с различными poxy url

Ext.define('TesterModel', { 
extend: 'Ext.data.Model', 
autoLoad: false, 
fields: [ 
    { name: 'prename', type: 'string' }, 
    { name: 'lastname', type: 'string' }, 
    { name: 'dept', type: 'string' }, 
    { name: 'rackName', type: 'string' }, 
    { name: 'rackIP' , vtype:'IPAddress'}], 
proxy: { 
    type: 'ajax', 
    url: 'php/getData_db.php?id=', 
    reader: { 
     type: 'json', 
     messageProperty: 'message', 
     root: 'data', 
    } 
}, 
constructor: function() { 
    UrlParams=document.URL.split("?"); 
    if(UrlParams.length > 1) { 
     SingleUrlParams=Ext.Object.fromQueryString(UrlParams[1]); 
     this.proxy.url = this.proxy.url + SingleUrlParams.right; 
     console.log(this.proxy.url); 
     } 
    return this; 
}}); 


Ext.ModelMgr.getModel('TesterModel').load(0, { // load user with ID of "0" 
success: function(tester) { 
    var rightPanel=Ext.getCmp('rightTester'); 
    rightPanel.loadRecord(tester); // when tester is loaded successfully, load the data into the form 
} 

});

Я думал, что конструктор будет выполнен до загрузки, но нет, это делается после. Это привязано ко мне. Любые подсказки, пожалуйста?

(основной URL это как? .../index.html левый = хх & вправо = уу) поэтому я хочу, чтобы заполнить панель слева с одним идентификатором, а панель на правой с правой стороны окна.

Спасибо!

ответ