Estou tentando traduzir um aplicativo Django. Eu criei algumas strings {% trans %}
em meus modelos. No entanto, quando executo o seguinte comando na pasta do meu aplicativo, recebo uma mensagem de erro:
$ django-admin.py makemessages -l fr
CommandError: Unable to find a locale path to store translations for file __init__.py`
O que eu fiz errado?
django
translation
Antoine M.
fonte
fonte
makemessages
comando daquelelocale
diretório se já estiver disponível.LOCALE_PATHS
mesmo que seja delocale
outra forma, o texto compilado não será detectável.LOCALE_PATHS
para configurar)Na verdade, você pode configurar onde está a pasta locale. Em seu settings.py adicione:
Em seguida, crie uma pasta para cada um dos idiomas que deseja traduzir:
fonte
O problema é que o comando não é executado no diretório do aplicativo, mas no diretório do projeto. Este snippet da documentação explica isso:
Acontece que você precisa
locale
primeiro criar uma pasta usandomkdir locale
.Portanto, você pode executar o comando no diretório do aplicativo:
… Ou você define um diretório local para todo o projeto usando
LOCALE_PATHS
e pode executar amakemessages
partir do diretório principal.De qualquer forma, você deve verificar se o
./locale/
diretório está presente e criá-lo usandocaso não seja.
fonte