Как отобразить данные JSON в Dojo DataGrid с помощью JsonRest и ObjectStore, если JSON заключен в массив

Я использую Dojo 1.6 для визуализации простого DatGrid. Единственная проблема, с которой я столкнулся, похожа на dojo 1.6 DataGrid не может отображать списки? Решение здесь вместе со ссылкой отсюда http://dojotoolkit.org/documentation/tutorials/1.6/store_driven_grid/ действительно работало и все такое, но осталась одна проблема со структурой JSON. Ниже приведены рабочие и нерабочие примеры. Я получаю JSON в формате, где все упаковано в массив элементов. Как заставить это работать?

Рабочий формат json

[{
    "bolist": ["CHM", "CVO", "PMO"],
    "title": "How do I do",
    "painpoints": ["this", "that", "manay more"],
    "solution": "wondeful"
}, {
    "bolist": ["DGM", "EXE", "CLI"],
    "title": "There we go",
    "painpoints": ["Front", "back", "many other places"],
    "solution": "under review"
}]

Нерабочий формат json (и я получаю json в этом формате)

{"items":[{
    "bolist": ["CHM", "CVO", "PMO"],
    "title": "How do I do",
    "painpoints": ["this", "that", "manay more"],
    "solution": "wondeful"
}, {
    "bolist": ["DGM", "EXE", "CLI"],
    "title": "There we go",
    "painpoints": ["Front", "back", "many other places"],
    "solution": "under review"
}]}

person fusionstrings    schedule 17.02.2013    source источник
comment
вы не можете просто добавить шаг stuff.items?   -  person nozzleman    schedule 18.02.2013
comment
Взгляните на мой ответ на Используя dgrid Dojo, JsonRest и подстроки/массивы.   -  person phusick    schedule 20.02.2013


Ответы (1)


Вы можете обрабатывать json как объект javascript! Поэтому попробуйте доставить jsonReturn.items в сетку. Таким образом, сетка получает только те данные json, которые вам нужны:

[{
    "bolist": ["CHM", "CVO", "PMO"],
    "title": "How do I do",
    "painpoints": ["this", "that", "manay more"],
    "solution": "wondeful"
}, {
    "bolist": ["DGM", "EXE", "CLI"],
    "title": "There we go",
    "painpoints": ["Front", "back", "many other places"],
    "solution": "under review"
}]
person Lucian Depold    schedule 18.02.2013