Extjs4 如何在extjs中动态地在模型中添加关联

Extjs4 如何在extjs中动态地在模型中添加关联,extjs4,extjs4.2,extjs-mvc,Extjs4,Extjs4.2,Extjs Mvc,我想根据字段的值在模型上添加关联。 例如: 我想添加一些关联,比如 hasMany:{ model:'App.model.ChildModel1' } hasMany:{ model:'App.model.ChildModel2' } 父模型: Ext.define('App.model.parentModel', { extend: 'Ext.data.Model', requires: [ 'App.model.ChildModel1',

我想根据字段的值在模型上添加关联。 例如:

我想添加一些关联,比如

hasMany:{
model:'App.model.ChildModel1' 
}
hasMany:{
model:'App.model.ChildModel2' 
}
父模型:

Ext.define('App.model.parentModel', {
    extend: 'Ext.data.Model',
    requires: [
        'App.model.ChildModel1',
        'App.model.ChildModel2',
    ],
    idProperty: 'type',
    fields: [
        'name',
        'type'
    ],
proxy:[//proxy]
});
我想添加一些关联,比如

hasMany:{
model:'App.model.ChildModel1' 
}
hasMany:{
model:'App.model.ChildModel2' 
}
如果“类型”字段的值为automobile

否则我想添加一些关联,比如

hasMany:{
model:'App.model.ChildModel1' 
}
hasMany:{
model:'App.model.ChildModel2' 
}

我如何在运行中检查此项并添加关联?

我想到了两种方法

您可以尝试的第一件事是使用模型的
setFields()
方法。我以前从未使用过这种方法,但根据文档,它看起来可以满足您的需求。可以在此处找到一个示例:

--或--

我过去做过的一件事是创建两个使用
'App.model.ChildModel1'
的商店,另一个使用
'App.model.ChildModel2'
。然后您可以在面板/网格上使用
reconfigure()
,并为其提供适当的存储