问题标签 [nested-set-model]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 如何通过php自动创建菜单 - 带有嵌套集模型的标签
我在此页面中看到了使用 MYSQL 在数据库中创建层次结构类别的嵌套集模型方法:
mikehillyer.com/articles/managing-hierarchical-data-in-mysql/
但我不明白如何使用这些 mysql 结果为站点类别菜单制作嵌套列表。
例如,如果,我的表是这样的:
我想用php<ul> <li>
自动制作类别菜单。
mysql - 如何创建 MySQL 视图以通过相关表显示嵌套集模型中每个节点的所有路径?
我有两个表,类别和产品。Categories 表是一个嵌套的集合模型。Products 表有一个唯一serial_number
的字段。他们的架构是这样的:
分类:
产品 :
我想要的是创建一个视图以显示所有序列号及其类别路径:
生成此视图的最佳查询是什么?
c# - 一种从邻接模型 + 嵌套集模型 (MPTT) 绘制树层次结构的方法
我有一个带有 SQL Server DB 的 .NET Core 2.2 应用程序,我正在使用邻接模型 + 嵌套集模型存储用户的层次结构。我正在使用 EF Core。我的域如下所示:
最顶层的元素当然ParentId = null
有DepthLevel = 0
我想将此结构显示为一些树结构图形。有没有人对此有一些想法或工作示例?
ruby-on-rails - 当模型是嵌套集时如何对数据库执行批量插入?
我有一个涉及嵌套集数据结构的模型,所以我使用了 act_as_nested_set gem。现在,我需要批量插入更多 10 万条记录。如果不是嵌套的集合数据结构,批量插入可能会更容易和更快捷。但是使用嵌套集,每次插入都会更新祖先链中的所有记录。所以,这需要很长时间。
我想创建内存树并维护 lft、rgt、深度、children_count、深度,然后批量插入它们,但我不确定在内存中创建 10 万个复杂对象是否是个好主意。
sql - 使用嵌套集模型同时删除多条记录
我正在尝试为我的 sql server 数据库创建已删除的触发器。删除记录后,触发器执行并更新树中其他节点的左、右、...。有关嵌套集模型的详细信息。这是我删除触发器的sql代码:
初始状态:
该代码适用于删除单个记录,例如:
正确的:
但是当我试图同时删除多条记录时,问题发生了:
错误的:
mysql - 在 MySQL 中动态创建 lft 和 rgt 列
谁能指导我如何使用 MySQL Query 动态地为表创建 lft 和 rgt 列(从根目录从左到右解析)?
我的表的结构如下所示:
我想要这样的结构:
javascript - 从 POJO 生成嵌套集模型
我一直在玩一些嵌套集模型(NSM)。我想做的一件事是能够从给定的 JavaScript 对象生成 NSM。
例如,给定以下对象:
我想生成一个像这样的对象数组。
也就是说 - 深度首先遍历对象,分配一个 ID 并计算层次结构中每个对象的左右边缘。这样每个节点都有一个唯一的 ID 和 NSM 的正确lft
值rgt
。
我尝试了各种方法,但似乎无法得到我想要的结果......我通过更改模型以使用节点名称和子节点的属性取得了一些成功 - 即
这给出了正确的结果,但需要更改输入数据......有没有办法使用原始data
对象生成相同的嵌套集模型?
javascript - 在nodejs循环中每次更新后如何获取文档的新值?
我试图在一个循环中多次更新集合,但每次我得到 oldRight 的值都没有改变它总是给出第一个值。
我使用嵌套集模式将主题存储在 mongodb 中。
laravel - Laravel:如何检查 web.php 中的嵌套类别 url?
例如
现在,为了解决类别,我使用以下命令创建了一个 URL 链接:
所以我有这样的事情:
此外,为了解决一篇文章,我使用以下命令创建了一个 URL 链接:
所以我有这样的事情:
如何通过 web.php 访问控制器中的这些功能?
在文章控制器
在类别控制器中
我尝试了这些步骤:
在web.php中
在RouteServiceProvider.php启动函数
这种方法正确吗?如何将嵌套类别链接与文章链接分开?(并检查两者?)
mysql - 分层数据的Mysql“嵌套集”方法在-some-rows中返回错误的父名称
我在表中有以下“嵌套集”数据。
ID | 姓名 | 左上角 | rgt | 主要的 |
---|---|---|---|---|
1 | 场合 uurwerken | 1 | 28 | 1 |
2 | 机械的 | 2 | 27 | |
3 | 高山 | 3 | 4 | |
4 | 作为 | 5 | 6 | |
5 | 杜罗威 | 7 | 8 | |
6 | 埃尼卡 | 9 | 10 | |
7 | 预计到达时间 | 11 | 12 | |
8 | FE | 13 | 14 | |
9 | FEF | 15 | 16 | |
10 | 费尔萨 | 17 | 18 | |
11 | 高频 | 19 | 20 | |
12 | 大手 | 21 | 22 | |
13 | 佩瑟 | 23 | 24 | |
14 | PUW | 25 | 26 | |
15 | Nieuwe uurwerken | 29 | 60 | 1 |
16 | 石英 | 30 | 47 | |
17 | 卡特林 | 31 | 32 | |
18 | 公民 | 33 | 34 | |
19 | 欧空局 | 35 | 36 | |
20 | FE | 37 | 38 | |
21 | GUB | 39 | 40 | |
22 | 宫田 | 41 | 42 | |
23 | 帕瑞宁 | 43 | 44 | |
24 | 隆达 | 45 | 46 | |
25 | 机械的 | 48 | 59 | |
26 | 埃尼卡 | 49 | 50 | |
27 | FE | 51 | 52 | |
28 | 高频 | 53 | 54 | |
29 | 佩瑟 | 55 | 56 | |
30 | 隆达 | 57 | 58 | |
31 | 复古场合 | 61 | 66 | 1 |
32 | 雪铁纳 | 62 | 63 | |
33 | 天梭stemvork | 64 | 65 |
我有这个查询来检索构建菜单所需的数据
哪个工作正常并返回以下数据
父母名字 | ID | 姓名 | 左上角 | rgt | 深度 |
---|---|---|---|---|---|
场合 uurwerken | 1 | 场合 uurwerken | 1 | 28 | 0 |
场合 uurwerken | 2 | 机械的 | 2 | 27 | 1 |
场合 uurwerken | 3 | 高山 | 3 | 4 | 2 |
场合 uurwerken | 4 | 作为 | 5 | 6 | 2 |
场合 uurwerken | 5 | 杜罗威 | 7 | 8 | 2 |
场合 uurwerken | 6 | 埃尼卡 | 9 | 10 | 2 |
场合 uurwerken | 7 | 预计到达时间 | 11 | 12 | 2 |
场合 uurwerken | 8 | FE | 13 | 14 | 2 |
场合 uurwerken | 9 | FEF | 15 | 16 | 2 |
场合 uurwerken | 10 | 费尔萨 | 17 | 18 | 2 |
场合 uurwerken | 11 | 高频 | 19 | 20 | 2 |
场合 uurwerken | 12 | 大手 | 21 | 22 | 2 |
场合 uurwerken | 13 | 佩瑟 | 23 | 24 | 2 |
场合 uurwerken | 14 | PUW | 25 | 26 | 2 |
Nieuwe uurwerken | 15 | Nieuwe uurwerken | 29 | 60 | 0 |
Nieuwe uurwerken | 16 | 石英 | 30 | 47 | 1 |
Nieuwe uurwerken | 17 | 卡特林 | 31 | 32 | 2 |
Nieuwe uurwerken | 18 | 公民 | 33 | 34 | 2 |
Nieuwe uurwerken | 19 | 欧空局 | 35 | 36 | 2 |
Nieuwe uurwerken | 20 | FE | 37 | 38 | 2 |
Nieuwe uurwerken | 21 | GUB | 39 | 40 | 2 |
Nieuwe uurwerken | 22 | 宫田 | 41 | 42 | 2 |
Nieuwe uurwerken | 23 | 帕瑞宁 | 43 | 44 | 2 |
Nieuwe uurwerken | 24 | 隆达 | 45 | 46 | 2 |
Nieuwe uurwerken | 25 | 机械的 | 48 | 59 | 1 |
Nieuwe uurwerken | 26 | 埃尼卡 | 49 | 50 | 2 |
Nieuwe uurwerken | 27 | FE | 51 | 52 | 2 |
Nieuwe uurwerken | 28 | 高频 | 53 | 54 | 2 |
佩瑟 | 29 | 佩瑟 | 55 | 56 | 2 |
隆达 | 30 | 隆达 | 57 | 58 | 2 |
复古场合 | 31 | 复古场合 | 61 | 66 | 0 |
雪铁纳 | 32 | 雪铁纳 | 62 | 63 | 1 |
天梭stemvork | 33 | 天梭stemvork | 64 | 65 | 1 |
这看起来不错,但是在 ID 29 和 30 的行中,父名称突然与节点名称相同,我不知道为什么?