1

ExtJS4グリッド内でグループ化する必要がある次のJSONがあります。

{
root: {
    type: 'viewer',
    people: ['person a', 'person b', 'person c']
},
{
    type: 'editor',
    people: ['person c', 'person d']
}
}

ExtJSグリッドでこのデータをどこから表現し始めるのかまったくわかりません。

しかし、これが私がこれまでに持っているものです:

var myModel = Ext.create('Ext.data.Model', {
    fields: ['type', 'people']
})

var myStore = Ext.create('Ext.data.Store' , {
    data: (JSON above),
    model: myModel,
    groupField: 'type',
    proxy: {
        type: 'memory',
        reader: {
            type: 'json',
            root: 'root'
        }
    }
});

var myGrid = Ext.create('Ext.grid.Panel', {
    store: myStore,
    columns: [
        {header: 'Name', dataIndex: 'people'}
    ]
})

.... other code to display the grid

表示するグリッドを取得しましたが、グループ化されず、グリッド内に表示されるデータがありません。

何らかの理由で、より複雑なモデルが必要だと思いますが、「people」オブジェクトは単なる文字列の配列であるため、どのdataIndexであるかを列定義に伝える方法がわかりません。

どんな助けでも大歓迎です。

ありがとう。

4

1 に答える 1

3

グリッドでグループ化機能を使用する必要があります。

この機能を使用すると、ストアで指定されたExt.data.Store.groupersで指定されたグループに集約されたグリッド行を表示できます。グループには、グループ名のタイトルが表示され、その下にグループの適切なレコードが表示されます。グループを展開したり折りたたんだりすることもできます。

于 2013-01-16T13:53:49.590 に答える