我正在尝试用法语制作我的django应用程序(之前它只有英文版)。我在我的应用程序中标记了一些用于翻译的字符串,以便进行试用。我转到我的应用程序的根目录(manage.py所在的位置)并运行django-admin.py makemessages -l fr_CA
。这在django.po
中创建了myapp/locale/fr_CA/LC_MESSAGES
文件。我编辑了该文件,提供翻译。回到我的应用程序的根目录,我运行了django-admin.py compilemessages -l fr_CA
。该命令快速返回,没有输出到stdout。没有创建.mo
文件。
为什么不创建.mo文件?
我尝试在我的设置文件中设置我的LOCALE_PATHS,但这没有效果(此外,我不需要这样做来创建.po文件,因为它们位于默认位置{{1} })。
答案 0 :(得分:6)
确定。弄清楚了。出于某种原因,在运行compilemessages
命令的同一位置运行makemessages
命令不起作用,即使这是docs所说的!
我必须更深入一个目录 - 包含settings.py
而不是包含manage.py
的目录。怪异。
我的应用程序设置方式肯定有些错误或奇怪,因为这明显违背了文档所说的内容...... 但是我从未改变默认的结构... 结果我做到了。