所以我有一个问题'因为我想在网格上显示父数据,如下所示:
家长模式
Ext.define('Ab.model.Marca', {
extend: 'Ext.data.Model',
fields: ['id','nombre'],
hasMany: {model: 'Ab.model.Maquina', name: 'maquina'},
proxy{...}
});
儿童模型
Ext.define('Ab.model.Maquina', {
extend: 'Ext.data.Model',
fields: ['id','nombre', 'codigo', 'estado'],
associations: [
{type:'belongsTo', model:'Ab.model.Marca', name: 'marca'},
]
proxy:{...}
});
儿童网格
好的,MaquinaController从Store执行加载并且这并不重要'因为加载信息非常好。问题是我无法显示父数据。
Ext.define('Ab.view.maquina.MaquinaList', {
extend: 'Ext.grid.Panel',
alias: 'widget.maquinalist',
store: 'Maquinas',
columns: [
{ text: _('Nombre'), flex: 1, dataIndex: 'nombre' },
{ text: _('Código Externo'), flex: 1, dataIndex: 'codigo' },
{ text: _('Estado'), flex: 1, dataIndex: 'estado' },
{ text: _('Marca'), flex: 1, dataIndex: 'marca' } <<< HOW CAN I SHOW MARCA?
]
});
提前致谢。
答案 0 :(得分:2)
覆盖column.renderer,并返回record.getParent()。get('someData');
http://docs.sencha.com/ext-js/4-1/#!/api/Ext.grid.column.Column-cfg-renderer
renderer: function(value, metadata, record, rowIndex, colIndex, store, view){
return record.getMarca().get('nombre');
}
另外,请确保遵守以下规则:
http://extjs-tutorials.blogspot.ca/2012/05/extjs-belongsto-association-rules.html