Команда Django makemessages не генерирует строку, помеченную для перевода, для файлов в каталоге templates

У меня проект на Django==2.2.12

и это часть моих настроек:

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [os.path.join(BASE_DIR, "templates")],
        "APP_DIRS": True,
        "OPTIONS": {
            "context_processors": [
                "django.template.context_processors.debug",
                "django.template.context_processors.request",
                "django.contrib.auth.context_processors.auth",
                "django.contrib.messages.context_processors.messages",
                "django.template.context_processors.static",
            ],
        },
    },
]

LANGUAGE_CODE = "pl"

TIME_ZONE = "Europe/Warsaw"

USE_I18N = True

USE_L10N = True

USE_TZ = False

LANGUAGES = (
    ('pl', gettext('Polish')),
    ('en', gettext('English')),
)

Когда я выполняю:

django-admin makemessages --locale=en

Из файлов .py он генерирует файлы .po со строкой для перевода в каталоге locale, но полностью пропускает файлы .txt, которые находятся в каталоге моих шаблонов. Например, он не генерирует строку для перевода для моего файла text.txt со следующим содержимым:

{% load i18n %} 
{% blocktranslate %}
string to translate
{% endblocktranslate %}
  1. Обязательно используйте {%trans 'your string %}
  2. Используйте эту команду для обновления .po файлов: python manage.py makemessages -l ar --no-wrap --no-location
  3. Удалите #fuzzy, если он находится выше того, что вы хотите перевести
  4. Выполнить python manage.py compilemessages

Надеюсь, это поможет!

Вернуться на верх