@Hukyl

Почему не работает перевод в шаблонах Django?

Проект на Python Django 3.0.
Хочу сделать перевод текста как в коде, так и в шаблоне.

Есть все необходимые предустановки:

1. USE_I18N = True
2.
LANGUAGES = [('uk', 'Ukrainian'), ('en', 'English')]

3. LANGUAGE_CODE = 'uk'
4.
'OPTIONS': {'context_processors': ['django.core.context_processors.i18n', ...]

5.
MIDDLEWARE = ['django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    'django.middleware.common.CommonMiddleware', ...]

6. INSTALLED_APPS = [..., 'master', 'administrator']
7.
LOCALE_PATHS = [
    os.path.join(PROJECT_ROOT, 'apps', 'master', 'locale'),
    os.path.join(PROJECT_ROOT, 'apps', 'administrator', 'locale'),
]

8. В шаблонах первым стоит тег `{% load i18n %}`
9. Во всех шаблонах есть тег перевода (`{% translate "some text" %}`)
10. path('i18n/', include('django.conf.urls.i18n')),
После этого всего ввожу команду
django-admin makemessages --locale=uk --extension=html,txt,py


В файле django.po нет никаких строк из шаблонов, а при запуске сервера и входе на страницу с переводом выбивает ошибку:

Invalid block tag on line 32: 'translate', expected 'endblock'. Did you forget to register or load this tag?


При чём перевод из кода есть и успешно переводится.
  • Вопрос задан
  • 388 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы