j444obs / dendrogram

php系统树图扩展组件

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PHP系统树图

v2.0 laravel 5.* PHP>=5.6

PHP系统树图可快速的处理无限极分类的业务需求 提供两种不同的数据结构和三种视图类型
数据结构 adjacency list nested sets
视图类型 目录 catalog 茎状 rhizome 下拉列表 select

example example

1.安装

composer require dendrogram/dendrogram:v2.0

2.配置

首先往Laravel应用中注册ServiceProvider,打开文件config/app.php,在providers中添加一项:

'providers' => [
    DenDroGram\DendrogramServiceProvider::class
]

3.发布

然后发布拓展包的配置文件,使用如下命令:

php artisan vendor:publish

会在config目录下会生成dendrogram.php的配置文件

4.数据导入

php artisan migrate

两表四个自定义函数 表名可先行在配置文件中修改.以保持与自定义函数内的表名一致

migrations下增加**城市sql文件
由于查询节点过多需要配置mysql
SET GLOBAL group_concat_max_len = 20460;

数据结构概述

adjacency结构 以父节点为基准的链式查询 增删容易 查询不便

config

nested结构 以左右值包容形式 增删不便 查询容易

config

code说明

生成对象
    /*adjacency list数据结构*/
    new DenDroGram(AdjacencyList::class)
    
    /*nested set数据结构*/
    new DenDroGram(NestedSet::class)
调用方法
调用方法 方法说明 方法参数 返回内容
buildCatalog 生成目录式结构树 根节点id |操作节点的路由POST方式 |节点显示字段 html文本
buildRhizome 生成根茎视图 根节点id |操作节点的路由POST方式 |节点显示字段 html文本
buildSelect 生成下拉列表 根节点id |列表选项显示字段 |列表选项值 |列表选项默认值 html文本 *获取选项结果可在js中调用dendrogramUS.storage() 点击选项回调方法dendrogramUS.callback()
operateNode 节点操作 action增删改标识 |data节点详情数据 返回boolean
getTreeData 获取结构型数据 根节点id 返回array
获取数据

example

About

php系统树图扩展组件


Languages

Language:TSQL 82.5%Language:PHP 17.5%