关于yii2 treemanager插件中lft和rgt的说明
这两个属性在计算多级记录的时候很重要,具体计算规则如下:
记录A和记录E是第一级节点,B、C是A的子节点,D是C的子节点,F是E的子节点。
从记录A开始计算,A的lft是1,递归读取A的所有子节点,顺序为lft赋值。如果子节点中还有子节点(如C)则继续遍历赋值,当所有子节点遍历完成之后顺序退回,给每个节点的rgt赋值.
A节点的赋值顺序为:A(lft)->B(lft)->B(rgt)->C(lft)->D(lft)->D(rgt)->C(rgt)->A(rgt),节点E的赋值和A相同
-A lft:1 rgt:8
-B lft:2 rgt:3-C lft:4 rgt:7-D lft:5 rgt:6
-E lft:9 rgt:12
-F lft:10 rgt:11
其实treemanager扩展是基于jqgrid中treegird的
参考http://www.w3dev.cn/article/20130709/jqGrid-treeGrid-nested-set-model.aspx
分层数据管理-嵌套集合模型
http://www.w3dev.cn/article/20130709/hierarchical-data-Nested-Set.aspx
是因为在MySQL中left和right是保留字。http://dev.mysql.com/doc/mysql/en/reserved-words.html,有一份详细的MySQL保留字清单。
关于yii2 treemanager插件中lft和rgt的说明相关推荐
- jqgrid中treegrid记录属性lft和rgt的计算
为什么80%的码农都做不了架构师?>>> 这两个属性在计算多级记录的时候很重要,具体计算规则如下: 记录A和记录E是第一级节点,B.C是A的子节点,D是C的子节点,F是E的子节 ...
- ATS 6.2.1打release版本rpm包时插件中出现undefined symbol的问题追踪
问题场景 我基于ATS 6.2.1社区版整合进一些插件,发现debug版本一直运行好好的,后来改为release版本(就是configure时不加--enable_debug)时,安装后显示下面的出错 ...
- ATS插件中配置文件自动更新思路
在ATS插件开发过程中,我们经常会需要如下业务需求: 某个插件的配置文件更新了,我们需要让新的配置文件生效,但是我们不想重启ATS.因为作为CDN行业的缓存服务器来说,很大部分缓存是直接使用内存存放的 ...
- Cacti 插件中setup.php 文件的编写
Cacti 插件中setup.php 文件的编写 名词: 初始化函数 预定义函数 cacti 插件存放在 /plugins 目录,由setup.php与cacti 做关联调用; setup.ph ...
- ESFramewor使用技巧(2)-- 在插件中使用NHibernate
我们来讨论一下这种情景,你采用基于ESFramework的4层架构进行应用开发,你分析用户的需求,并将其分类整理为几大块,考虑每一块使用一个功能插件来完成.在这几个插件中,有个插件需要访问某个 ...
- 【转载】ESFramewor使用技巧(2)-- 在插件中使用NHibernate
ESFramewor使用技巧(2)-- 在插件中使用NHibernate 我们来讨论一下这种情景,你采用基于ESFramework的4层架构进行应用开发,你分析用户的需求,并将其分类整理为几大 ...
- 如何动态在maven插件中加载项目及第三方类
在maven插件中是加载不到目标项目的类及目标项目引用的第三方所提供的类的,需要通过动态读取目标项目所依赖的classpath并根据这些classpath生成相应的url数组,以这个url数组作为参数 ...
- CVE-2021-2429:MySQL InnoDB Memcached 插件中的堆缓冲区溢出漏洞详解
聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 2021年4月,ZDI 收到了一名匿名者提供的关于MySQL 数据库中某漏洞的报告,结果是位于 InnoDB memcached 插件中的基于堆 ...
- 插件中对动态表单数据模型进行赋值实现动态表单数据绑定
默认情况下,表单的数据模型创建及赋值由BOS基类实现,一些特殊场景需要在插件中动态创建及赋值绑定. 下面为动态表单"付款单明细列表"的表单插件,PurchaseServiceHel ...
最新文章
- 基于 tcp协议完成的上传下载
- libSVM 参数选择
- AppFabric Caching Admin Tool
- python编程入门第一课_python入门前的第一课 python怎样入门
- Shell编程-JAVA大数据-Week5-DAY3-linux
- 如何使用Photoshop修改论文中插图颜色
- echarts引入china报错(The GeoJSON of the map must be provided)
- 渗透测试报告模板_网站安全测试报告模板该如何写
- dl320服务器内存型号,HP DL320 G5 1U XEON 3040/2GB内存/500G SATA 双核服务器
- 你可能修了一个假的“不净观”
- ROS小车打造(12)--Arduino订阅cmd_vel实现差速控制
- 手机上那些排版优雅的文章是怎么实现的?
- 简单使用SAXReader解析xml数据
- 【webrtc】视频特效的添加(15)
- Android面试:整理了Android面试官最常问的174道面试题,让你秒变offer收割机
- python从列表中随机提取多个元素_如何使用numpy从列表中随机选择n个元素?
- 利用TL-WR842N(V4)进行路由桥接搭建WDS出现的问题
- 那些年,Android音视频开发那些事儿
- ORB_SLAM2 KITTI数据集测试
- 【每日一题】输入年限返回现存猪的数量
热门文章
- 计算机基础 电子工业出版,电子工业出版社21世纪计算机基础教育系列教材2吴功宜吴英编着.ppt...
- [FFmpeg] AVPacket 的使用记录(初始化、引用、解引用、释放)
- flow hive 新型蜂箱_流动的蜂蜜盛宴:Flow Hive蜂箱获数百万美元众筹款
- HTTP长相随--期盼已久的HTTP2.0、WebDAV协议、 QUICHTTP3.0
- 粗识 HTML5 video 标签和MSE媒体源扩展
- Can't create/write to file '/tmp/MYmZiY2i' 报错解决方法
- ios 长按 放大镜_如何在iOS 10中将iPhone的相机用作放大镜
- 教学论文计算机,计算机教学论文
- 【高中数学】三棱锥体积公式
- java剪刀石头布小游戏_JAVA实现“剪刀石头布”小游戏