【发布时间】:2017-01-27 09:47:33
【问题描述】:
我想在 Django 中有几个不同版本的相同语言,为不同的国家定制(例如locale/en、locale/en_CA、locale/en_US 等)。如果没有针对特定国家/地区的语言,我希望使用默认语言版本 (locale/en)。
然后在每个站点的设置文件中指定LANGUAGE_CODE 和LANGUAGES。
由于某种原因,即使我指定了以下设置,仍然使用locale/en_US 翻译:
LANGUAGE_CODE = 'en'
LANGUAGES = (
('en', ugettext('English')),
)
虽然我明确指出语言代码应该是en(而不是en-us)。
我错过了什么吗?已经尝试在多个地方找到答案,包括 Django 文档。
【问题讨论】:
-
实际上,如果 Django 支持它,您通常希望在 en_CA、en_US 等中维护最少的条目,并在主要 en 上逐个回退,因为大多数单词在所有口味中都是相同的。 IE。如果您在 neighbour 与 neighbor 中找到一个词,请从具体中选择,但仅将 house 留在 main 中。
-
没错,但问题是 Django 出于某种原因使用了“en_US”,即使我只是指定了“en”。有什么线索吗?编辑:如果我指定“en-ca”,它会正确使用“en_CA”。
-
不,不幸的是,这条建议来自我在另一个系统上的经验,只是为了降低翻译成本。尚未使用 Django 翻译支持。
标签: python django internationalization django-i18n