members/admin: prefetch group in Member queryset

object-level-permissions
Christian Merten 3 years ago
parent 32c3ffc3ce
commit 029da6af80
Signed by: christian.merten
GPG Key ID: D953D69721B948B3

@ -221,13 +221,13 @@ class MemberAdmin(admin.ModelAdmin):
def get_queryset(self, request): def get_queryset(self, request):
queryset = super().get_queryset(request) queryset = super().get_queryset(request)
if request.user.has_perm('members.may_list_everyone'): if request.user.has_perm('members.may_list_everyone'):
return annotate_activity_score(queryset) return annotate_activity_score(queryset.prefetch_related('group'))
if not hasattr(request.user, 'member'): if not hasattr(request.user, 'member'):
return Member.objects.none() return Member.objects.none()
queryset = request.user.member.filter_queryset_by_permissions(queryset, annotate=True) queryset = request.user.member.filter_queryset_by_permissions(queryset, annotate=True)
return annotate_activity_score(queryset) return annotate_activity_score(queryset.prefetch_related('group'))
def change_view(self, request, object_id, form_url="", extra_context=None): def change_view(self, request, object_id, form_url="", extra_context=None):
try: try:

Loading…
Cancel
Save