19 lines
385 B
Python
19 lines
385 B
Python
import logging
|
|
import threading
|
|
|
|
logger = logging.getLogger(__name__)
|
|
_local = threading.local()
|
|
|
|
|
|
def get_current_user():
|
|
return getattr(_local, "user", None)
|
|
|
|
|
|
class CurrentUserMiddleware:
|
|
def __init__(self, get_response):
|
|
self.get_response = get_response
|
|
|
|
def __call__(self, request):
|
|
_local.user = request.user
|
|
return self.get_response(request)
|