Django Rosetta и i18n не работают с некоторыми идентификаторами в Javascript
У меня есть проект с Django, и я хочу перевести его на испанский, английский и итальянский языки.
Все работает правильно в html файлах, но у меня есть файл в .js, который не работает правильно. Есть идентификаторы, которые были переведены и есть идентификаторы, которые не были переведены. Этот файл находится в папке static и вызывается из .html файла
<script src="{% url 'javascript-catalog' %}"></script>
<script type="text/javascript" src="{% static 'services_steps/file.js' %}"></script>
В файле file.js у меня все идентификаторы в переменных:
var whatever1 = gettext("filejs_whatever1")
var whatever2 = gettext("filejs_whatever2")
var whatever3 = gettext("filejs_whatever3")
Url.py
path('jsi18n/', JavaScriptCatalog.as_view(), name='javascript-catalog'),
url(r'^i18n/', include('django.conf.urls.i18n')),
if 'rosetta' in settings.INSTALLED_APPS:
urlpatterns += [
re_path(r'^rosetta/', include('rosetta.urls'))
]
А files.po получает все идентификаторы (services_steps/locale)
...
#: file.js:70
msgid "filejs_whatever0"
msgstr "Whatever 0"
#: file.js:71
msgid "filejs_whatever1"
msgstr "Whatever 1"
#: file.js:72
msgid "filejs_whatever2"
msgstr "Whatever 2"
Команды находятся в папке static (services_steps):
django-admin makemessages -d djangojs -l en_GB
django-admin makemessages -d djangojs -l es_ES
django-admin makemessages -d djangojs -l it_IT
И в корневом каталоге
django-admin compilemessages