Wagtail新手在这里。

我正在尝试为特定模型添加一些额外的权限,但“wagtail admin”中没有显示任何内容。我可以用“django”的方式做到这一点,但我的印象是 wagtail 可以处理这种类型的权限。我在 wagtail 文档中找不到任何提示。

我有一个名为“MyPage”的新模型:

class MyPage(Page):
    [...]

    class Meta:
        permissions = (
        ('view_restricted_document', 'can view restricted documents'),
    )

如何在 wagtail 管理员的组部分提供此权限?

最佳答案

事实证明,有一个 wagtail 钩子(Hook)可以做到这一点:“register_permsissions”。

如果您的应用程序中不存在名为“wagtail_hooks.py”的文件,则创建该文件并输入以下内容:

from wagtail.wagtailcore import hooks
from django.contrib.auth.models import Permission

@hooks.register('register_permissions')
def view_restricted_page():
    return Permission.objects.filter(codename="view_restricted_document")

就是这样。
现在,如果我浏览组部分,在“其他权限”下,我可以查看附加选项“可以查看受限文档”。

关于permissions - Wagtail 为 MyPage 设置额外权限,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37663893/

10-13 05:00