Ant*_* M. 96 django translation
我正在尝试翻译Django应用程序.我{% trans %}
在模板中创建了一些字符串.但是,当我在我的app文件夹中执行以下命令时,收到一条错误消息:
$ django-admin.py makemessages -l fr
CommandError: Unable to find a locale path to store translations for file __init__.py`
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
Ant*_* M. 143
原来你需要先创建一个locale
文件夹mkdir locale
.
Dav*_*han 25
实际上,您可以配置语言环境文件夹的位置.在您的settings.py中添加:
LOCALE_PATHS = (
PROJECT_ROOT + '/website/locale', )
Run Code Online (Sandbox Code Playgroud)
然后为要翻译的每种语言创建一个文件夹:
mkdir -p website/locale/de
Run Code Online (Sandbox Code Playgroud)
jnn*_*nns 12
问题是该命令不是从app目录运行,而是从项目目录运行.文档中的这个片段解释了它:
原来你需要先创建一个locale
文件夹mkdir locale
.
./manage.py makemessages
[...] 在当前目录的整个源树上运行,并拉出标记为要翻译的所有字符串.它在conf/locale(在Django树中)或locale(用于项目和应用程序)目录中创建(或更新)消息文件.
因此,您可以从app目录运行命令:
$ cd app
$ django-admin makemessages -l <locale>
Run Code Online (Sandbox Code Playgroud)
...或者您使用定义项目范围的语言环境目录LOCALE_PATHS
,您可以makemessages
从那里从主目录运行.
无论哪种方式,您都应该检查./locale/
目录是否存在并使用它创建
$ mkdir locale
Run Code Online (Sandbox Code Playgroud)
如果不是.
归档时间: |
|
查看次数: |
20853 次 |
最近记录: |