Django 1.9 sr_Latn 语言环境不起作用

标签 django localization internationalization locale

在 Django 1.6.5 中,以下内容有效: 在设置.py

LANGUAGES = (
    ('sr_Latn', 'Srpski'),
    ('en', 'English'),
)

而包含翻译的语言环境文件夹也称为 sr_Latn

使用 Django 1.9.2。 sr_Latn 不再被识别为语言代码,因此我必须输入 sr-latn,但随后找不到语言环境文件夹 - 无论它是否被称为 sr-latn、sr-Latn、sr_latn 或 sr_Latn。

LANGUAGES = (
    ('sr-latn', 'Srpski'),
    ('en', 'English'),
)

此问题仅针对塞尔维亚拉丁语,因为这是唯一具有如此有趣格式的语言环境。

最佳答案

事实证明 Django 开发人员这次做对了。以下设置非常有效:

设置:

LANGUAGES = (
    ('sr-latn', 'Srpski'),
    ('en-gb', 'English'),
)

LOCALE_PATHS = (
    # translation files on the server must be in the same folder as this
    # settings file and this path must point to the translations.
    # Dev server works anyway with this path. 
    os.path.join(os.path.dirname(__file__), "locale"),
)

我的项目文件夹中有区域设置文件夹:

./project-folder/
    locale/
        sr_Latn/
            LC_MESSAGES/
                django.mo
                django.po
        en_GB/
            LC_MESSAGES/
                django.mo
                django.po

一切终于都有意义了。

关于Django 1.9 sr_Latn 语言环境不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35760101/

相关文章:

ruby-on-rails - 如何在 Draper gem 中使用 i18n 翻译方法?

java - Java 中的多语言本地化

DjangoORM : Resolve F Expression in Custom DB Function

ruby-on-rails - Rails 3强制使用特定文本的本地化语言

python - 如何使用python/django从Google读取CalDAV对象?

ios - 即时更改语言环境

android - 语言更改菜单用于更改不同的语言

带有非英文字符的 Oracle 搜索文本

django - 在 Django 中设置多对一的首选项目

python - 如何从外部 python 脚本调用 django View 函数