如何过滤 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())
我有一个菜单项,它一次列出了 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())