1

我有两个模型。掌握 -

Ext.define('App.model.Master', {
   extend    : 'Ext.data.Model'

  ,fields    : [
    { name  : 'master_name', type  : 'string' },
    { name  : 'id', type  : 'int'}
  ]
  ,proxy    : {
    type  : 'rest',
    url    : '/master',
    reader    : {
      type  : 'json',
      root  : 'masters'
    }
  }
  ,associations  : [{
    type      : 'hasMany'
    id        : 'id',
    foreignKey    : 'master_id',
    associationKey  : 'details',
    name      : 'details',
    model      : 'App.model.Detail',
  }]
});

和细节 -

Ext.define('App.model.Detail', {
  extend    : 'Ext.data.Model'
  fields    : [
    { name  : 'detail_name', type  : 'string' },
    { name  : 'id', type  : 'int' },
    {name  : 'master_id', type  : 'string'}
  ]
});

我的问题是,当我添加新的主记录时,服务器中会自动添加一个详细信息。我得到的回应是——

{
  success : true,
  masters : {
    master_name  : 'aaa',
    id      : 1,
    details    : [
      {
        detail_name  : 'bbb',
        id      : 11,
        master_id  : 1
      }
    ]
  }
}

尽管我付出了所有努力,但一旦将响应添加到主存储中,我就无法读取“详细信息”。我认为'record.details()' 会给我一个在添加大师时返回的记录,但我什么也没得到。

但是,如果我重新加载商店,我能够正确获取数据。

我还需要能够读取 Store.add() 上的嵌套响应。

任何帮助深表感谢。

4

0 回答 0