Remember 3.2? https://docs.djangoproject.com/en/3.2/topics/i18n/timezones/
Python
import pytz
from django.utils import timezone
class TimezoneMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
tzname = request.session.get('django_timezone')
if tzname:
timezone.activate(pytz.timezone(tzname))
else:
timezone.deactivate()
return self.get_response(request)Yeah, don’t do that anymore. Use “zoneinfo.ZoneInfo(…)” https://docs.djangoproject.com/en/5.2/topics/i18n/timezones/
Python
import zoneinfo
from django.utils import timezone
class TimezoneMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
tzname = request.session.get("django_timezone")
if tzname:
timezone.activate(zoneinfo.ZoneInfo(tzname))
else:
timezone.deactivate()
return self.get_response(request)More info: https://claude.ai/code/artifact/40c5d2fa-d89d-4bf5-9f0f-523333c6d7df