Loading django/utils/cache.py +3 −1 Original line number Diff line number Diff line Loading @@ -165,7 +165,9 @@ def _i18n_cache_key_suffix(request, cache_key): # which in turn can also fall back to settings.LANGUAGE_CODE cache_key += '.%s' % getattr(request, 'LANGUAGE_CODE', get_language()) if settings.USE_TZ: cache_key += '.%s' % get_current_timezone_name() # Windows uses non-standard timezone names that may include spaces, # which triggers CacheKeyWarning. cache_key += '.%s' % get_current_timezone_name().replace(' ', '_') return cache_key def _generate_cache_key(request, method, headerlist, key_prefix): Loading tests/regressiontests/cache/tests.py +2 −2 Original line number Diff line number Diff line Loading @@ -1270,7 +1270,7 @@ class CacheI18nTest(TestCase): @override_settings(USE_I18N=False, USE_L10N=False, USE_TZ=True) def test_cache_key_i18n_timezone(self): request = self._get_request() tz = timezone.get_current_timezone_name() tz = timezone.get_current_timezone_name().replace(' ', '_') response = HttpResponse() key = learn_cache_key(request, response) self.assertIn(tz, key, "Cache keys should include the time zone name when time zones are active") Loading @@ -1281,7 +1281,7 @@ class CacheI18nTest(TestCase): def test_cache_key_no_i18n (self): request = self._get_request() lang = translation.get_language() tz = timezone.get_current_timezone_name() tz = timezone.get_current_timezone_name().replace(' ', '_') response = HttpResponse() key = learn_cache_key(request, response) self.assertNotIn(lang, key, "Cache keys shouldn't include the language name when i18n isn't active") Loading Loading
django/utils/cache.py +3 −1 Original line number Diff line number Diff line Loading @@ -165,7 +165,9 @@ def _i18n_cache_key_suffix(request, cache_key): # which in turn can also fall back to settings.LANGUAGE_CODE cache_key += '.%s' % getattr(request, 'LANGUAGE_CODE', get_language()) if settings.USE_TZ: cache_key += '.%s' % get_current_timezone_name() # Windows uses non-standard timezone names that may include spaces, # which triggers CacheKeyWarning. cache_key += '.%s' % get_current_timezone_name().replace(' ', '_') return cache_key def _generate_cache_key(request, method, headerlist, key_prefix): Loading
tests/regressiontests/cache/tests.py +2 −2 Original line number Diff line number Diff line Loading @@ -1270,7 +1270,7 @@ class CacheI18nTest(TestCase): @override_settings(USE_I18N=False, USE_L10N=False, USE_TZ=True) def test_cache_key_i18n_timezone(self): request = self._get_request() tz = timezone.get_current_timezone_name() tz = timezone.get_current_timezone_name().replace(' ', '_') response = HttpResponse() key = learn_cache_key(request, response) self.assertIn(tz, key, "Cache keys should include the time zone name when time zones are active") Loading @@ -1281,7 +1281,7 @@ class CacheI18nTest(TestCase): def test_cache_key_no_i18n (self): request = self._get_request() lang = translation.get_language() tz = timezone.get_current_timezone_name() tz = timezone.get_current_timezone_name().replace(' ', '_') response = HttpResponse() key = learn_cache_key(request, response) self.assertNotIn(lang, key, "Cache keys shouldn't include the language name when i18n isn't active") Loading