【发布时间】:2016-07-22 05:49:10
【问题描述】:
我正在使用jstree jQuery plugin 将类别显示为树视图。
在后端,我使用etrepat/baum laravel 包来创建类别嵌套集。
etrepat/baum 包有一个名为toHierarchy() 的方法,它返回一个表示查询树的嵌套集合。
返回的格式如下:
{
"7":{
"org_level_id":7,
"parent_id":5,
"lft":7,
"rgt":12,
"depth":0,
"name":"Computer",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
{
"org_level_id":14,
"parent_id":7,
"lft":8,
"rgt":9,
"depth":1,
"name":"hard",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
]
},
{
"org_level_id":13,
"parent_id":7,
"lft":10,
"rgt":11,
"depth":1,
"name":" RAM",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
]
}
]
},
"9":{
"org_level_id":9,
"parent_id":2,
"lft":20,
"rgt":23,
"depth":0,
"name":"search engines",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
{
"org_level_id":18,
"parent_id":9,
"lft":21,
"rgt":22,
"depth":1,
"name":"Google",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
]
}
]
},
"17":{
"org_level_id":17,
"parent_id":10,
"lft":25,
"rgt":26,
"depth":0,
"name":"Download",
"created_at":"2015-11-02 00:45:01",
"updated_at":"2015-11-02 00:45:01",
"children":[
]
}
}
而另一方面,JStree 插件 需要一种 json 格式,例如从中创建树视图:
[
'Simple root node',
{
'text' : 'Root node 2',
'state' : {
'opened' : true,
'selected' : true
},
'children' : [
{ 'text' : 'Child 1' },
'Child 2'
]
}
]
如何将 etrepat/baum 的返回格式转换为 jstree 所需的适当格式?
【问题讨论】:
标签: php jquery json laravel jstree