如何过滤 wagtail 管理员中的页面列表,以便编辑者只能看到其中一部分的页面?

How to filter page lists in the wagtail admin so editors only see pages from group there a part of?

我有一个菜单项,它一次列出了 Wagtail 管理中所有父页面的所有页面。我希望只显示当前登录用户所属组中的用户发布的帖子。

我设法使用此代码限制用户只能查看他们自己的帖子,并认为这可以扩展到我正在寻找的内容。

#admin.py

class PageAdmin(ModelAdmin):
    model = BlogPage
    menu_icon = "doc-full"
    menu_label = "All Posts"
    list_display = ("title", "date", 'owner')

    def get_queryset(self, request):
        qs = super().get_queryset(request)
        #only show articles from the current user
        return qs.filter(owner=request.user)

modeladmin_register(PageAdmin)

谢谢

试试这个(未测试):

return qs.filter(owner__groups__in=request.user.groups.all())