ExtJS Grid列,带引用模型的dataIndex

时间:2015-05-29 14:22:30

标签: extjs grid viewmodel store datagridcolumn

我有一个绑定gridanel的ExtJS viewmodel store。该商店的模型是一个定义的模型,其中的字段引用另一个模型。

为简单起见,这是一个例子:

Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: ['name']
});

Ext.define('Order', {
    extend: 'Ext.data.Model',
    fields: ['date', {
        name: 'user',
        reference: 'User'
    }]
});

viewmodel: {
    store: {
        order: {
            model: 'Order',
        }
    }
}

在我的gridpanel我有2列。在一列中,dataIndex: 'date'正常工作,显示日期。但是,在我的第二列中,我想显示用户的名称。我不知道该怎么做。 user field本身位于对象上,因此声明dataIndex: user不起作用。我试过dataIndex: {user.name},但这也不起作用。我甚至试过

bind: {
    data: '{user.name}'
}

也无济于事。我已经找到了使用列的renderer配置的解决方案,但是如果我必须手动遍历适当字段的数据结构,那么它真的很难看并且有一个模型引用的点。

TL; DR 我正在寻找一种方法来将列dataIndex声明为reference模型中的字段。

0 个答案:

没有答案