Django 如何决定将 makemessages 的输出放在哪里?
How does Django decide where to put the output of makemessages?
我有一个带有几个本地语言环境文件夹的 Django 应用程序,存储在基本目录的 translations 文件夹中:
translations/public/locale/{en,fr}
translations/portal/locale/{en,fr}
translations/terminology/locale/{en,fr}
与 LOCALE_PATHS
中的相应条目:
LOCALE_PATHS = (
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'public', 'locale')),
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'portal', 'locale')),
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'terminology', 'locale')),
)
一切正常,但我不知道如何告诉 makemessages
将其输出放在哪里。我在源代码中没有看到任何相关参数。我的偏好是将文件放在其他地方,例如:
% bin/dev/manage.py makemessages -o .../derived_translations
如何控制或至少确定输出文件的放置位置?
在 makemessages
的帮助中说的很对:
Runs over the entire source tree of the current directory and pulls out all
strings marked for translation. It creates (or updates) a message file in the
conf/locale
(in the django tree) or locale
(for projects and applications)
directory. You must run this command with one of either the --locale,
--exclude, or --all options.
好了,它们将在 conf/locale
或 app_name/locale
目录中。
至于自定义输出目录,如果不编写 makemessages.py
的自定义版本似乎是不可能的
我有一个带有几个本地语言环境文件夹的 Django 应用程序,存储在基本目录的 translations 文件夹中:
translations/public/locale/{en,fr}
translations/portal/locale/{en,fr}
translations/terminology/locale/{en,fr}
与 LOCALE_PATHS
中的相应条目:
LOCALE_PATHS = (
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'public', 'locale')),
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'portal', 'locale')),
os.path.abspath(os.path.join(BASE_DIR, 'translations', 'terminology', 'locale')),
)
一切正常,但我不知道如何告诉 makemessages
将其输出放在哪里。我在源代码中没有看到任何相关参数。我的偏好是将文件放在其他地方,例如:
% bin/dev/manage.py makemessages -o .../derived_translations
如何控制或至少确定输出文件的放置位置?
在 makemessages
的帮助中说的很对:
Runs over the entire source tree of the current directory and pulls out all strings marked for translation. It creates (or updates) a message file in the
conf/locale
(in the django tree) orlocale
(for projects and applications) directory. You must run this command with one of either the --locale, --exclude, or --all options.
好了,它们将在 conf/locale
或 app_name/locale
目录中。
至于自定义输出目录,如果不编写 makemessages.py