我在settings.py中设置了可用的语言
LANGUAGE_CODE = 'en'
LANGUAGES = (
('fr', _('French')),
('en', _('English')),
)
当我在模板中进行循环时,我认为django通过{{ lang.1 }}向我提供翻译后的名称是预期行为。但是我不希望语言名称被翻译,所以我已经按照以下设置更改了我的settings.py:
LANGUAGES = (
('fr', 'Francais'),
('en', 'English'),
)
我仍然在获取翻译后的语言名称。你有什么想法吗? {% get_available_languages as languages %} 模板标签自动翻译列表项吗?如果是这样,那么在循环可用语言时如何使用未翻译的语言名称?
----编辑---
我已经检查了django的get_available_languages模板标签代码。 我认为它是在这里翻译的:
class GetAvailableLanguagesNode(Node):
def __init__(self, variable):
self.variable = variable
def render(self, context):
context[self.variable] = [(k, translation.ugettext(v)) for k, v in settings.LANGUAGES]
return ''
也许我需要编写自己的模板标签...