Django compilemessages不会创建.mo文件

时间:2015-03-01 02:38:39

标签: python django localization internationalization

我正在尝试用法语制作我的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} })。

1 个答案:

答案 0 :(得分:6)

确定。弄清楚了。出于某种原因,在运行compilemessages命令的同一位置运行makemessages命令不起作用,即使这是docs所说的!

我必须更深入一个目录 - 包含settings.py 而不是包含manage.py的目录。怪异。

我的应用程序设置方式肯定有些错误或奇怪,因为这明显违背了文档所说的内容...... 但是我从未改变默认的结构... 结果我做到了。