#python #django #wagtail
#python #django #wagtail
Вопрос:
У меня есть пункт меню, в котором перечислены все страницы сразу со всех родительских страниц в Wagtail admin. Я хотел бы, чтобы там отображались только сообщения, опубликованные пользователями из группы, частью которой является текущий зарегистрированный пользователь.
Мне удалось использовать этот код, чтобы ограничить просмотр пользователями только своих собственных сообщений и подумать, что это может быть расширено до того, что я ищу.
#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)
Спасибо
Ответ №1:
Попробуйте это (непроверено):
return qs.filter(owner__groups__in=request.user.groups.all())
Комментарии:
1. Чтобы это работало, просто нужно протестировать его для пользователей с несколькими группами и модераторами. Спасибо!