Django: exception in get_catalog()
I have a limited set of LANGUAGES:
LANGUAGE_CODE='sl' # It's for locals first of all
LANGUAGES=[
('sl', _('Slovene')), # First is default
('en', _('English')),
('it', _('Italian')),
('de', _('German')),
('ru', _('Russian')),
]
But not everything is translated, mainly they're to have additional fields for django_modeltranslation. I've added this line to see what's happening right after "while True" in django/views/i18n.py:get_catalog():
print(translation, translation._fallback)
For en_US value in accept_language header, all is fine:
<DjangoTranslation lang:en> <gettext.GNUTranslations object at 0x7f07f59cb070>
<gettext.GNUTranslations object at 0x7f07f59cb070> <gettext.GNUTranslations object at 0x7f07f59cb0e0>
<gettext.GNUTranslations object at 0x7f07f59cb0e0> None
For sl_SI all is good as well:
<DjangoTranslation lang:sl> None
But for de_DE (or ru_RU) it crashes:
<DjangoTranslation lang:de> <DjangoTranslation lang:sl>
<DjangoTranslation lang:sl> <django_countries.EmptyFallbackTranslator object at 0x7f07f6ccbcb0>
<django_countries.EmptyFallbackTranslator object at 0x7f07f6ccbcb0> None
Internal Server Error: /jsi18n/
Traceback (most recent call last):
File "/home/pooh/venv13/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
File "/home/pooh/venv13/lib/python3.13/site-packages/django/core/handlers/base.py", line 198, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/pooh/venv13/lib/python3.13/site-packages/django/views/generic/base.py", line 106, in view
return self.dispatch(request, *args, **kwargs)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/pooh/venv13/lib/python3.13/site-packages/django/views/generic/base.py", line 145, in dispatch
return handler(request, *args, **kwargs)
File "/home/pooh/venv13/lib/python3.13/site-packages/django/views/i18n.py", line 124, in get
context = self.get_context_data(**kwargs)
File "/home/pooh/venv13/lib/python3.13/site-packages/django/views/i18n.py", line 210, in get_context_data
"catalog": self.get_catalog(),
~~~~~~~~~~~~~~~~^^
File "/home/pooh/venv13/lib/python3.13/site-packages/django/views/i18n.py", line 187, in get_catalog
for key, value in translation._catalog.items():
^^^^^^^^^^^^^^^^^^^^
AttributeError: 'EmptyFallbackTranslator' object has no attribute '_catalog'
Is it a problem with django codebase or I have a misconfiguration somewhere?