我如何 运行 makemessages 以便它包含 Django 项目之外的一些应用程序?

How do I run makemessages so it includes some apps that are outside the Django project?

我有以下结构:

.
├── apps
│   ├── app1
│   │   ├── app1
│   │   └── setup.py
│   ├── app2
│   │   ├── app2
│   │   └── setup.py
├── my_django_project
│   ├── appA
│   ├── appB
│   ├── my_django_project
│   ├── db.sqlite3
│   ├── manage.py
│   └── requirements.txt
├── deployment
│   └── some files
├── locale
│   └── fr
│       └── LC_MESSAGES
│           ├── django.mo
│           └── django.po
├── log
│   └── some files
├── media
├── README.rst
├── run
│   └── some files
└── static

我已经开始翻译我的项目了。我已经成功翻译了 my_django_project 中的所有内容,这是实际的 django 项目。我安装了 2 个应用 python setup.py develop,它们位于 django 项目范围之外。我似乎无法 运行 makemessages 命令。 运行 它与 manage.py 助手在 apps 文件夹中找不到应用程序。即 locale/fr/LC_MESSAGES/django.po 中没有添加任何内容。它适用于位于 my_django_project.

appAappB

如何运行为这些位于 django 项目之外的应用程序发送消息?

我需要在 django 项目中创建符号链接:

cd my_django_project
ln -s ../apps/app1/app1 .

然后我需要添加一个额外的参数来跟随同义链接:

./manage.py makemessages -l fr --symlinks

编辑:

解决此问题的更好方法是在文件夹 app 中添加一个 locale 目录,然后向 运行 添加以下命令(在 app 文件夹中):

django-admin makemessages -l fr

然后通过以下命令(运行 在应用程序文件夹中)运行编译消息:

django-admin compilemessages