Answers:
原来您需要locale
先使用创建一个文件夹mkdir locale
。如果从应用程序文件夹中运行命令,则需要locale
该应用程序文件夹中的文件夹。
LOCALE_PATHS
即使不是这样,也需要定义,locale
否则编译后的文本将不会被发现。
LOCALE_PATHS
配置)
实际上,您可以配置区域设置文件夹的位置。在您的settings.py中添加:
LOCALE_PATHS = (
PROJECT_ROOT + '/website/locale', )
然后为您要翻译的每种语言创建一个文件夹:
mkdir -p website/locale/de
问题在于该命令不是从应用程序目录运行,而是从项目目录运行。文档中的以下代码片段对此进行了解释:
原来您需要locale
先使用创建一个文件夹mkdir locale
。
./manage.py makemessages
[…] 在当前目录的整个源代码树上运行,并拉出所有标记为要翻译的字符串。它在conf / locale(在Django树中)或locale(用于项目和应用程序)目录中创建(或更新)消息文件。
因此,您可以从应用程序目录运行命令:
$ cd app
$ django-admin makemessages -l <locale>
…或使用定义项目范围的语言环境目录,LOCALE_PATHS
然后可以makemessages
从主目录运行。
无论哪种方式,都应检查./locale/
目录是否存在并使用创建目录
$ mkdir locale
万一不是。
makemessages
从该locale
目录执行命令(如果已经可用)。