File size: 488 Bytes
b4f2238 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | """API 层公共辅助函数"""
from __future__ import annotations
from django.http import HttpRequest
from ninja import Router
from apps.organization.models import Lawyer
router = Router(tags=["组织管理辅助"])
def get_request_user(request: HttpRequest) -> Lawyer | None:
"""从 Ninja request 中提取当前用户(兼容 auth 和 session 两种认证方式)"""
return getattr(request, "auth", None) or getattr(request, "user", None) # type: ignore[return-value]
|