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]