我需要了解wagtail root [depth = 0]页面的想法。因为对我来说,主页必须在根级别,但目前所有主页都在深度= 1级,为什么以及根级页面的想法是什么。 我检查了文档等,但没有找到这个想法的明确信息。
另外为什么主页[depth = 1]与站点对象有关而不是root [depth = 0]?
答案 0 :(得分:2)
这主要是一个实现细节,使Wagtail的内部逻辑更简单。例如,Page
模型具有copy
和move
方法,这些方法将新的父页面作为参数。在根级别拥有一个固定的,不可编辑的页面意味着我们可以传递一个有意义的值作为父级 - 如果根节点不存在,我们必须实现单独的代码路径以“将页面移动到一个新的父母“对”将一个页面移动到顶层“。
但是,还有一个地方根页面对网站管理员有直接意义:可以为该页面分配权限(通过“设置” - >“组”区域)。由于权限沿页面树向下传播,这意味着该权限将应用于所有站点中的所有页面。例如,如果您想为(非超级用户)组提供创建新主页的能力,您可以通过在根页面上给予“添加”权限来实现这一点。