Django makemessages for app in site-packages

Tör*_*bor 3 django localization gettext django-manage.py

如何使用Django的内置makemessages工具收集项目文件夹之外的翻译字符串?管理命令makemessages非常方便,我想将它用于站点包中的应用程序.

Art*_*yan 8

(1)激活安装Django的虚拟环境.

(2)转到要为其生成消息的应用程序的目录:

$ cd path/to/app/in/site/packages/
Run Code Online (Sandbox Code Playgroud)

(3)确保它具有"locale"目录.如果没有 - 做一个.

$ mkdir locale
Run Code Online (Sandbox Code Playgroud)

(4)从您的app目录运行以下命令:

$ django-admin.py makemessages -l [LANGUAGE_CODE]
Run Code Online (Sandbox Code Playgroud)

荷兰语的例子:

$ django-admin.py makemessages -l nl
Run Code Online (Sandbox Code Playgroud)

俄语的例子:

$ django-admin.py makemessages -l ru
Run Code Online (Sandbox Code Playgroud)

  • 是的,它确实从您运行它的包中收集字符串。这就是为什么我们有 ``cd path/to/app/in/site/packages/`` 的原因。 (3认同)

小智 2

除了 makemessages 之外,我发现PyBabel非常有用。这是对 Django 本身的绑定:http ://babel.edgewall.org/wiki/BabelDjango