Динамическая загрузка столбцов для ExtJS - PullRequest
1 голос
/ 17 февраля 2011

У меня проблемы с определением того, что мне нужно сделать, чтобы динамически загружать столбцы для сетки ExtJS.Я хочу иметь возможность отправлять заголовки столбцов в виде JSON, чтобы сетка принимала их и генерировала необходимые столбцы.

В частности, я хочу сделать это с помощью плагина GroupingHeader, но на самом деле я просто хочувыяснить, как это сделать без дополнительной сложности плагина GroupingHeader, а затем я могу решить эту проблему:)

Вот некоторые примеры данных JSON, которые у меня есть для заголовков столбцов:

[
    {
        "run_id":"110207gad",
        "iterations":[
            "1_14",
            "2_16",
            "3_18",
            "4_20",
            "5_22"
        ]
    },{
        "run_id":"110207gae",
        "iterations":[
            "1_14",
            "2_16",
            "3_18",
            "4_20",
            "5_22"
        ]
    }
]

Это данные, которые мне понадобятся для группировки, где run_id будет сгруппированным заголовком, а iterations будет заголовками столбцов.Прямо сейчас я рад, что iterations отображается в виде столбцов, и тогда я могу работать над тем, чтобы группировка работала.

Если кто-то может указать мне правильное направление или дать мне несколько советовс чего начать, это было бы чрезвычайно полезно!Я не собираюсь выяснять это самостоятельно, но мне просто нужно немного подняться, чтобы начать, потому что я не могу понять, просматривая примеры ExtJS и делая некоторые поиски в Google.

1 Ответ

1 голос
/ 17 февраля 2011

Я предлагаю вам взглянуть на исходный код примера ExtJS.

http://dev.sencha.com/deploy/dev/examples/grid/array-grid.js

Это должно дать вам достаточное количество информации, чтобы начать.

Вы можете начать с этого формата, передать его с вашего сервера:

{"success":true,"message":"Loaded data","data":[{"run_id":1,"iterations":"1"},{"run_id":2,"iterations":"2"},{"run_id":3,"iterations":"3"}]}

Тогда ваш читатель будет выглядеть так:

var reader = new Ext.data.JsonReader({
    totalProperty: 'total',
    successProperty: 'success',
    idProperty: 'run_id',
    root: 'data',
    messageProperty: 'message'  
}, [
    {name: 'run_id'},
    {name: 'iterations', allowBlank: false}
]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...