Я пытаюсь перевести приложение Django. Я создал несколько строк {% trans %}
в своих шаблонах. Однако когда я выполняю следующую команду в папке своего приложения, я получаю сообщение об ошибке:
$ django-admin.py makemessages -l fr
CommandError: Unable to find a locale path to store translations for file __init__.py`
Что я сделал не так?
django
translation
Антуан М.
источник
источник
makemessages
команду из этогоlocale
каталога, если он уже доступен.LOCALE_PATHS
даже если он вlocale
противном случае скомпилированный текст не будет обнаруживаемым.LOCALE_PATHS
для настройки)Фактически вы можете настроить, где находится папка локали. В вашем settings.py добавьте:
Затем создайте папку для каждого из языков, которые вы хотите перевести:
источник
Проблема в том, что команда запускается не из каталога приложения, а из каталога проекта. Этот фрагмент из документации объясняет это:
Оказывается, вам нужно
locale
сначала создать папку, используяmkdir locale
.Итак, вы либо запускаете команду из каталога приложения:
… Или вы определяете директорию локали для всего проекта, используя,
LOCALE_PATHS
иmakemessages
оттуда вы можете запустить ее из главного каталога.В любом случае вы должны проверить наличие
./locale/
каталога и создать его, используяв случае, если это не так.
источник