【问题标题】:Django, How do I access the LANGUAGE_CODEDjango,我如何访问 LANGUAGE_CODE
【发布时间】:2011-05-17 13:57:28
【问题描述】:

当您开始翻译您的应用程序时,事情变得非常有趣,它确实对您构建应用程序的方式提出了挑战。

在您的 settings.py 文件中添加所有不同的语言

LANGUAGES = (
    ('en', gettext('English')),
    ('sv', gettext('Swedish')),
    ('no', gettext('Norwegian')),
)

不,我知道您可以使用get_current_language as LANGUAGE_CODE 访问第一位,即en

我的模板中有没有一种方法可以访问显示文本,即English

【问题讨论】:

    标签: django internationalization django-templates


    【解决方案1】:

    如果您有LANGUAGE_CODE,您可以使用language_name 过滤器:

    {{ LANGUAGE_CODE|language_name }}
    

    (以及许多其他可能性:django template translation-specific variables

    在 django

    您可以通过以下方式访问可用语言列表:

    {% get_available_languages as LANGUAGES %}
    

    要显示这个列表:

    {% for lang in LANGUAGES %}
     CODE:{{ lang.0 }}, NAME:{{ lang.1 }}
    {% endfor %}
    

    如您所见,语言名称是lang.1(内部元组的第二个成员)

    如果您想要一种语言的名称,请在将其传递给模板之前将其放在上下文中,或者在上面的循环中添加比较条件以获取名称。

    【讨论】:

    • {% for code, name in LANGUAGES %} CODE:{{ code }}, NAME:{{ name }} {% endfor %}
    猜你喜欢
    • 2016-09-18
    • 2011-11-12
    • 2018-04-14
    • 2020-01-20
    • 1970-01-01
    • 2012-08-23
    • 2020-06-14
    • 2014-09-30
    • 2020-10-19
    相关资源
    最近更新 更多