Django国际化语言代码

Hul*_*ulk 31 python django internationalization django-views django-i18n

我在哪里可以找到这样的语言列表和language_code.

(Swedish,sv)
(English,en)
Run Code Online (Sandbox Code Playgroud)

Tho*_*mas 62

如果您想要在django中使用的东西,请尝试:

from django.conf import settings
Run Code Online (Sandbox Code Playgroud)

这将采用上面的格式,非常适合在您的某个模型中选择= fields.(即user_language = models.CharField(max_length=7, choices=settings.LANGUAGES))

LANGUAGES = (
    ('ar', gettext_noop('Arabic')),
    ('bg', gettext_noop('Bulgarian')),
    ('bn', gettext_noop('Bengali')),
    etc....
    )
Run Code Online (Sandbox Code Playgroud)

使用设置的注意事项:

请注意,django.conf.settings不是模块

  • @Kimvais:'sr-latn'有7个字符 (5认同)
  • http://code.djangoproject.com/browser/django/trunk/django/conf/global_settings.py将为您提供django支持的语言的完整列表,以及http://docs.djangoproject.com/en/dev/ref/settings /#languages概述了用法.希望这可以帮助. (2认同)

his*_*rio 16

维基:

http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes

  • 并非所有这些语言代码都受支持。有关主列表,请参见文件django.conf.locale.LANG_INFO。 (3认同)
  • http://www.i18nguy.com/unicode/language-identifiers.html (2认同)

vis*_*ell 16

以前的答案只提到LANGUAGE来自settings.py,hovewer很可能会覆盖此变量.因此,您可以从中获取完整列表django.conf.global_settings.LANGUAGES

from django.db import models

from django.conf.global_settings import LANGUAGES

class ModelWithLanguage(models.Model):
    language = models.CharField(max_length=7, choices=LANGUAGES)
Run Code Online (Sandbox Code Playgroud)