问题标签 [gedmo-tree]

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.

0 投票
1 回答
256 浏览

php - 具有多个集合的 Gedmo Tree 嵌套集

我们正在使用 Gedmo 包来管理我们的菜单,使用我们网站上的嵌套策略。

它可以工作,但问题是我们有几个不同的菜单,这些菜单通过menu_item表上的外键引用。

显然我们的menu_item表有一个自引用parent_id,但是是否可以通过另一个指向另一个表的列来限制?即我们有几个菜单,我们的 Gedmo 东西在menu_item桌子上。但是这些lft rgt东西会考虑每一行,我只需要那个菜单的行。

这可能吗?如果是这样,它是如何完成的?

0 投票
2 回答
939 浏览

php - 是否可以从作曲家锁定文件中的另一个包更新所需的依赖项?

我目前stof/doctrine-extensions-bundle在我的一个 Symfony 项目中使用gedmo/doctrine-extensions. 最新版本gedmo/doctrine-extensions失败。但解决方案是在兄弟分支之一 v2.4.x中。

https://github.com/Atlantic18/DoctrineExtensions/commit/0b7bdbefd3d166def27928dcd62ab67c11c8f172

是否可以在要求中添加此分支,stof/doctrine-extensions-bundle或者我应该等到捆绑包的所有者创建一个新标签?

0 投票
1 回答
438 浏览

php - Symfony 4 @UniqueEntity 不适用于 GEDMO 树复合字段

我似乎已经正确完成了设置,但这仍然不起作用,即它不会正确设置数据库表。事实上,它完全忽略了 @UniqueEntity 注释。

我正在设置GEDMO 树,其中不应为相同的 parent_id 重复类别的标题。

因此,查看@UniqueEntity 文档以及我构建的一些先前代码,这应该可以工作:

/应用程序/实体/类别

这里实际上有一个类似的问题,没有解决方案。

0 投票
0 回答
1301 浏览

symfony - Symfony Gedmo 树

例如,Gedmo 树可用于项目和子产品等。但是我有一种情况,我在产品和类别(ManytoMany)之间有一个连接表。

每个产品都可以通过许多类别连接起来。每个类别可以有许多产品。在我的产品视图中,可以选择连接多个类别。

我遇到的问题有点难以解释。我有一个包含所有类别的视图,其中一个类别可以有子类别。

  1. cat1(显示产品)

    1.1 cat1-1(显示产品)

    1.2 cat1-2(显示产品)

每个类别,甚至是子类别都有一个链接,可以打开一个包含所有连接产品的新页面。我需要找到一种方法来根据它们的类别对这些产品进行分类,我正在尝试用 Gedmo Tree 做什么。

请参阅下面的实体,该实体是连接实体。

问题是 Gedmo 没有区分您所在的类别。它只是继续计算lftrgt

我希望我已经清楚地描述了我的问题,并且有人有解决方案。

也许我可以使用 Gedmo treeRoot?但不知道 treeRoot 可用于何处

0 投票
0 回答
134 浏览

php - 切换到 PHP 7.1 导致 Doctrine Gedmo 异常和警告

我目前正在为 Doctrine(或 Atlantic18/DoctrineExtensions)的 Gedmo 行为扩展中的随机异常和警告苦苦挣扎,这些异常和警告在 PHP 版本从 5.6 更改为 7.1 后开始出现。它只是在使用树/嵌套树行为期间发生。

Gedmo 的版本是 v2.4.31。在一些研究中,我发现了一个问题,元数据缓存存在问题。不幸的是,即使我们为 Redis 更改了 Memcache,它也没有帮助(我认为 Memcache 中的键长度可能存在一些问题)

您有遇到此类问题的经验吗?请你给我一些提示如何解决它?我即将尝试将版本降级回 PHP 5.6 并检查它是否是主要原因。

编辑:即使改回 PHP 5.6,错误和警告也没有消失。

0 投票
0 回答
1057 浏览

php - 使用 Gedmo Tree 重新排序嵌套集树

我在 Symofny4 应用程序中使用 (Atlantic18/DoctrineExtensions) Gedmo 嵌套集树策略管理类别。

我需要重新排序现有的树,将一组重新排列的类别传递给我的控制器。

所以起始树是

启动数据库表 在此处输入图像描述

定义新订单的数组是这样的

所以预期的树是

类别实体

在我的控制器中,我有一个递归函数试图达到我的目标,一个 JS 调用更新函数传递类别作为参数

但结果树是

在此处输入图像描述

正如您所看到的,lft 和 rgt 索引是错误的......所以有可能,使用 Gedmo,我想要做什么?如果是的话......我哪里错了?谢谢

0 投票
1 回答
742 浏览

symfony - 如何通过所有父节点的 id 获取一些子节点(DoctrineExtensions、Gedmo-Tree NestedTreeRepository、Symfony)

目标:

我有一个类别实体。每个类别都可以有子类别。

现在我想通过 id 和它的所有父母来获取特定的类别节点

我当前的解决方案(自定义存储库功能):

问题:

如何自动获取父节点(由 id 找到的所有节点),而不是通过 id 手动获取每个可能的父节点(参见代码中的“解决方法”)?

我找不到任何解决方案..

我认为它应该是这样的:->orWhere('node.id in (node.parent)')这是行不通的。([语法错误] 第 0 行,第 89 列:错误:预期文字,得到“节点”)

提前感谢您抽出宝贵时间!

0 投票
0 回答
152 浏览

php - Symfony - Gedmo 扩展 - 与关系的蛞蝓

我正在使用 Gedmo 生成我的 slug(https://github.com/doctrine-extensions/DoctrineExtensions/blob/main/doc/sluggable.md#basic-usage-examples)。但在这里我处于一个有点特殊的情况。

我想在“祖父”实体的实体上创建一个蛞蝓。

基本上我在实体A上。实体A作为父实体B,它具有实体C。我想从实体C的slug和实体A的字段创建一个slug。

当我只有一个关联(在 A 和 B 之间)的 slug 时,不用担心。但现在我真的不明白我该怎么做。

例如,对于需要实体 B 的 slug 的 slug,我会这样:

所以我想,如果我还有一个关联,我只需添加一个这样的关系字段行:

私人?字符串 $slug = null;

我还尝试在这样的关系中直接指示父母:

但什么都没有过去,他告诉我他不能扼杀它。你有想法吗 ?

0 投票
0 回答
16 浏览

api-platform.com - 带有 ApiPlatfom 和 Gedmo NestedTree 的 JSON 补丁

我想用 JSON Patch 批量更新我的树,如下所示:

上面请求中的错误是未更改的项目应该看起来像/api/categories/x而不是{"@id":"/api/categories/x"}.

我的问题是我希望移动和更新的项目,例如移动节点更改其子节点列表。

这可以一步完成吗?