CMS用户无法看到“添加子页面”按钮

问题描述 投票:0回答:1

我正在尝试在预先存在的Django项目中使用Wagtail。我已经安装了CMS,并且在现有的Django管理员中似乎运行良好-我可以使用Django管理员的用户之一进行身份验证,并看到CMS UI,一切都很好。

但是:无论我如何尝试,作为管理员用户,我都无法在页面URL(例如/ cms / pages / 3 /)上看到“添加子页面”按钮。不显示“添加子页面”菱形图标。这有点麻烦,因为所有教程和示例都假定该图标已经显示!

我登录的用户在auth_user中被设置为“ is_superuser” ='t',并且该用户所在的两个组之一已被授予Django admin中的所有wagtail权限(我很拼命!),但仍然没有骰子。我还尝试将所有权限授予其他(非管理员)用户,并以他们的身份登录,但仍然看不到该按钮。

我创建了一个基本的HomePage,该HomePage继承了Page的子类,但仍然看不到创建它的方法。深入研究,我发现用户组之一(auth_group.id = 1)在“ wagtailcore_grouppagepermission”中具有对我正在CMS中查看的页面的“添加”权限,而该页面看起来是正确的。

我是Python / Django的新手,所以我可能错过了一些显而易见的东西!

  • Django 2.2
  • W 2.8.1
  • CentOS
  • Python 3.6
  • ((使用CentOS通过docker-compose进行Docker多服务设置)

[更新]

我可以看到以下行未能通过对specific_class(除None以外的任何内容)的测试。如果我修改返回True的行,则会在CMS UI中看到该按钮:

./ core / models.py:

def can_add_subpage(self):
    ...
    if specific_class is None or not specific_class.creatable_subpage_models():
        print('##', specific_class) # None
        return False
    ...

为什么specific_classNone specific_class到底是什么?

wagtail
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.