This commit is contained in:
Herculino Trotta
2024-10-13 15:33:47 -03:00
parent da85c28499
commit ff302e8377
2 changed files with 14 additions and 1 deletions

View File

@@ -2,6 +2,7 @@ import zoneinfo
from django.utils import timezone, translation
from django.utils.cache import patch_vary_headers
from django.utils.translation import activate
from cachalot.api import invalidate
class LocalizationMiddleware:
@@ -32,6 +33,14 @@ class LocalizationMiddleware:
else:
language_to_activate = translation.get_language_from_request(request)
# Check if timezone or language has changed
if (
getattr(request, "timezone", None) != timezone_to_activate
or getattr(request, "language", None) != language_to_activate
):
# Invalidate cachalot cache
invalidate()
# Apply timezone and language to the request
request.timezone = timezone_to_activate
request.language = language_to_activate