2011-07-20 44 views
3

我對ExtJS相當陌生,並且正在爲此付出一點努力。如何創建一個具有多個屬於同一模型類型的ExtJS 4模型?

我有一個「人」模型,它與同一模型(母親和父親)有一對關係。

雖然我不清楚如何訪問這些關係。下面是我得到了什麼:

Ext.define('IwiDb.model.Person', { 
extend: 'Ext.data.Model', 
fields: [ 
    'ID', 
    'Title', 
    'FirstName', 
    'MiddleNames', 
    'Surname', 
    //.. snip 
    'MotherID', 
    'FatherID', 
], 
associations: [{ 
    type: 'belongsTo', 
    model: 'IwiDb.model.Person', 
    primaryKey: 'ID', 
    foreignKey: 'MotherID', 
    autoLoad: true, 
    name: 'Mother', 
    getterName: 'getMother', 
},{ 
    type: 'belongsTo', 
    model: 'IwiDb.model.Person', 
    primaryKey: 'ID', 
    foreignKey: 'FatherID', 
    autoLoad: true, 
    name: 'Father', 
    getterName: 'getFather', 
}], 

idProperty: 'ID', 
proxy: { 
    type: 'rest', 
    url: 'api/v1.extjs/Person', 
    format: 'json', 
    reader: { 
     type: 'json', 
     root: 'items', 
     totalProperty: 'totalSize', 
    }, 
    writer: { 
     type: 'json', 
    }, 
    simpleSortMode: true, 
} 
}); 

編輯:我覺得我越來越近,我已經更新了代碼,我現在得到。至少現在我可以做person.getMother()並返回一個函數。但我仍然無法獲取數據。任何人都知道嗎?

回答

2

嗯,我想到最後。上面的(編輯)代碼是正確的定義,那麼如果我想要例如加載母親,我做這樣的事情:

var mother; 
person.getMother(function(result, operation) { mother = result }); 
相關問題