问题标签 [django-treebeard]

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 回答
1052 浏览

django - 如何在管理员中使用 django-treebeard?

我正在尝试在管理部分使用 django-treebeard。

来自https://tabo.pe/projects/django-treebeard/docs/tip/intro.html#configuration

注意:如果要使用 Treeadmin 类,则需要在 TEMPLATE_DIRS 中添加 treebeard 模板的路径。您还需要在 django 设置文件的 TEMPLATE_CONTEXT_PROCESSORS 设置中启用 django.core.context_processors.request。

所以我在 admin.py 中添加了我的树,它显示在管理员中,但是当我点击它时,我得到了

'adminmedia' 不是有效的标签库:找不到模板库 adminmedia,已尝试

如何找到树须模板的位置?它对生产来说是动态的吗?我的 settings.py 文件中也没有 TEMPLATE_CONTEXT_PROCESSORS 。

0 投票
2 回答
303 浏览

django-models - 查找后代项目集

假设我有这些模型:

我想找到Item属于给定任何后代Category的所有 s 。

通常我会写category.item_set,但这只是Item属于层次结构的给定级别。

使用树须教程中的示例树,如果一个项目属于“笔记本电脑内存”,我将如何找到属于“笔记本电脑内存”是这些后代之一的后代“计算机硬件”的所有项目?

0 投票
4 回答
998 浏览

sql - 搜索物化路径树的最右边节点

是否可以通过物化路径树的path文本字段进行排序以找到树的最右侧节点?例如,考虑这个使用 django-treebeard 的 python 函数MP_Node

从我所有的测试来看,它似乎返回了我的期望,但我不知道如何提出数学来证明它。而且我还没有找到有关在物化路径树上执行此操作的任何信息。

Treebeard 的实现在路径中没有分隔符,因此路径如下所示:000100010001000100010012等。

0 投票
1 回答
369 浏览

django - 通过数据迁移添加默认标签

我正在使用与taggittreebeard一起使用的分层标签。我正在尝试进行数据迁移,以便我可以定义将出现在应用程序的所有实例中的标签。

我定义了这个方法:

这应该创建两个标签“root”和一个孩子“ook”。但是,当我运行迁移时,出现此错误:

该方法add_rootMP_Node来自treebeard的类方法。

我怎样才能解决这个问题?

0 投票
1 回答
935 浏览

python - 如何在 django 1.8 中使用 treebeard 管理员

我正在尝试在管理部分使用 django-treebeard,遵循https://tabo.pe/projects/django-treebeard/docs/2.0/admin.html的建议

在 python 3.4 上使用 django 1.8 和 treebeard 3.0。

模型.py:

请注意,我需要以这种方式定义的模型,因为一个站点可以位于层次结构中的多个点。我发现没有开箱即用的树库支持这一点,所以我只使用嵌套集和与实际数据的多对一关系。

我试图像这样(admin.py)将我的树添加到管理控制面板:

我从中得到的是

如果我使用声明视图的继承方式,什么都不会改变。

我究竟做错了什么?

0 投票
3 回答
4114 浏览

django - django-treebeard 相比 django-mptt 有什么优势?

有两个著名的 Django 包用于创建树结构:django-treebearddjango-mptt。最近Django CMS开始使用 django-treebeard 代替 django-mptt。Wagtail CMS也在使用 django-treebeard。

是什么让 django-treebeard 成为比 django-mptt 更可取的选择?

0 投票
1 回答
182 浏览

django - 如何添加第二个根元素?

我有模型:

我尝试创建新的根元素:

以下错误:

这个包怎么去掉?

0 投票
1 回答
549 浏览

django-models - 使用 Django Serializer 将 Treebeard AL_NODE 序列化为 JSON

我无法让 Django 将 AL_NODE 序列化为模型序列化器。是否可以序列化 AL_NODE?

这是我的代码:

以下是数据样本及其在数据库中的结构: 数据库

我的views.py中的代码

0 投票
0 回答
308 浏览

django - Kendo TreeList 不刷新平面数据

我正在使用剑道树列表。我在数据库中有一个使用 Django TreeBeard 的邻接列表数据结构的数据结构。对于树列表,由于数据是嵌套的,因此我创建了平面对象并将它们放入数组中。这很好用,但树列表不会用数据刷新。

对象结构与父对象结构相同,但子对象不显示。

这是我的代码。

JSON:父节点

JSON 子节点

JAVASCRIPT

0 投票
2 回答
2003 浏览

django - 如何使用 django-treebeard 的 MP_Node 预取后代?

我正在开发一个使用分层数据结构的应用django-rest-framework程序django-treebeard。我的(简化的)主要模型看起来像这样

我目前正在尝试实现的是所有根节点的列表视图,其中显示了额外的字段(例如是否所有子节点都已启动)。为此,我指定了一个视图:

和序列化器

这一切都有效,我得到了预期的结果。但是,我遇到了 N+1 查询问题,对于每个根任务,我需要分别获取所有子任务。通常这可以使用解决,prefetch_related但由于我使用物化路径结构django-treebeard,因此任务模型之间没有 Django 关系,所以prefetch_related不知道开箱即用。我尝试使用自定义 Prefetch 对象,但由于这仍然需要 Django 关系路径,我无法让它工作。

我目前的想法是使用指向其根节点的外键扩展任务模型,如下所示:

为了使 MP 关系明确,以便可以查询。然而,这确实感觉有点像一种不干的方法,所以我想知道是否有人对如何解决它有其他建议。