jqgrid - сетка дерева для данных плоской структуры - PullRequest
1 голос
/ 24 февраля 2012

Мои данные хранятся в базе данных в плоской структуре без какой-либо иерархической формы и в настоящее время отображаются в табличном формате с использованием jqgrid.Я хотел бы отобразить его в режиме детализации, например, на верхних уровнях, дочерних уровнях, таких как вложенные.Можно ли это сделать с помощью jqgrid ...

1 Ответ

1 голос
/ 26 февраля 2012

Я думаю, что лучший способ сделать некоторые запросы использует GROUP BY на стороне сервера для построения информации об иерархии данных. Таким образом, вы будете строить древовидные структуры, которые вам нужны. Основные данные получат свойства isLeaf:true, level:4, expanded:false, loaded:true и свойство parent с идентификатором родительского узла "2200". Если бы вы использовали в качестве идентификаторов значения с префиксами, такими как 'e' для 'Event', 'm' для 'Model' и т. Д., Вам будет легко создать уникальные идентификаторы для каждой строки, так что вы сможете создать все данные для Сетка дерева на сервере и затем поместите данные в ответ сервера.

В качестве альтернативы вы можете заполнить только верхний уровень сетки дерева. Вы можете просто построить запрос, который будет производить результирующий набор. Если пользователь откроет какой-либо узел дерева, новый запрос будет отправлен на сервер. Запрос будет содержать несколько дополнительных параметров : nodeid, parentid и n_level. Если вы хорошо выберете значения id для корневых элементов, у вас будет полная информация для построения запроса, который выведет вас на следующий уровень в дереве. Вы должны использовать parentid как для создания WHERE части запроса. Таким образом, вы также можете построить дерево и загрузить все узлы по требованию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...