РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
814 of 818 menu

Команда compilemessages

Команда compilemessages применяется для компиляции файлов перевода с расширением .po в бинарные файлы .mo, которые Django использует для подстановки переведенных строк в приложении. Команда обрабатывает все каталоги locale в проекте и создает скомпилированные версии файлов перевода для каждой поддерживаемой локали. Обычно команда запускается после создания или обновления файлов перевода командой makemessages.

Синтаксис

python manage.py compilemessages

Команда также принимает несколько опциональных параметров для управления процессом компиляции.

python manage.py compilemessages [--locale LOCALE] [--exclude EXCLUDE] [--use-fuzzy] [--ignore PATTERN]

Пример . С указанием локали

Чтобы скомпилировать файлы перевода только для конкретной локали:

python manage.py compilemessages --locale ru

Результат выполнения команды:

"processing file django.po in /app/locale/ru/LC_MESSAGES" "compiled message file created: /app/locale/ru/LC_MESSAGES/django.mo"

Пример . С исключением локали

Можно исключить определенные локали из процесса компиляции:

python manage.py compilemessages --exclude ru --exclude uk

Пример . С использованием нечетких переводов

По умолчанию нечеткие переводы игнорируются при компиляции. Чтобы включить их, используйте параметр --use-fuzzy:

python manage.py compilemessages --use-fuzzy

Пример . Игнорирование путей

Команда поддерживает игнорирование определенных каталогов с помощью параметра --ignore:

python manage.py compilemessages --ignore venv --ignore .git

Полный пример рабочего процесса

Рассмотрим полный процесс создания и компиляции переводов в Django проекте:

# Создание файлов перевода для русской локали python manage.py makemessages --locale ru # Редактирование файла locale/ru/LC_MESSAGES/django.po # Добавление переводов для строк # Компиляция файлов перевода python manage.py compilemessages --locale ru # Проверка работы перевода в приложении python manage.py shell

Результат проверки в shell:

from django.utils.translation import gettext as _ translated = _("Hello, world!") print(translated)

Результат выполнения кода:

"Привет, мир!"

Смотрите также

  • команда makemessages,
    которая создает файлы перевода для интернационализации
  • команда runserver,
    которая запускает сервер для разработки
  • команда migrate,
    которая применяет миграции к базе данных
  • команда collectstatic,
    которая собирает статические файлы проекта
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить