"""Admin 接口权限:要求已登录 + is_staff""" from rest_framework.permissions import IsAuthenticated class IsAdminUserStaff(IsAuthenticated): """已登录用户 + is_staff=True。 沿用项目既有 ViewSet 的 get_permissions() 中 `request.user.is_staff` 检查惯例, 封装成可复用的 permission 类。 """ def has_permission(self, request, view): if not super().has_permission(request, view): return False return bool(request.user and request.user.is_authenticated and request.user.is_staff)