1

我的组合框将始终只有一个分配给它的记录存储,它来自服务器,如下所示:

[
{
    "consulta_id": 23752, 
    "convenio_id": 1, 
    "data": "2012-07-11", 
    "id": 36569, 
    "paciente": {
        "nome": "Alvasole", 
        "id": 12
     }, 
    "tipo": 1
}, 
{
    "consulta_id": 23753, 
    "convenio_id": 61, 
    "data": "2012-07-11", 
    "id": 36579,
    "paciente": {
        "nome": "Felintoi", 
        "id": 33
     }, 
    "tipo": 1
}
]

在这种情况下,需要将商店分配给“paciente”对象(带有 id 和 nome)。我不会让它自动工作。

这种方式有效,但需要手动调用:

setData: function(data) {
    this.getStore().loadRawData(data.get('paciente'));
    this.select(this.getStore().getAt(0));
},
4

1 回答 1

0

扁平化模型的一种方法是使用mapping属性并使用点符号来访问嵌套对象的字段,如下所示:

Ext.define('MyApp.model.Paciente', {
    extend:'Ext.data.Model',
    fields:[
       {name:'id', mapping:'paciente.id'}
       ...
     ]
});
于 2012-11-20T19:19:01.073 回答