Django - 有没有办法从用户列表中隐藏超级用户?

时间:2017-05-28 15:35:16

标签: django django-admin

(抱歉我的英语不好)

我想知道是否存在任何方法来隐藏django admin中用户列表中的超级用户,如果正在查看列表的用户不是超级用户?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以覆盖用户管理员的get_queryset方法,并仅根据登录用户返回结果:

<强>的myapp / admin.py

from django.contrib.auth.admin import UserAdmin as BaseUserAdmin

@admin.register(User)
class UserAdmin(BaseUserAdmin):
    def get_queryset(self, request):
        qs = super(UserAdmin, self).get_queryset(request)
        if not request.user.is_superuser:
            return qs.filter(is_superuser=False)
        return qs