使用django国际化

时间:2017-03-08 01:29:11

标签: python django google-chrome localization internationalization

我在django中实现国际化和本地化

我作为西班牙语的第一个测试,模板中的一些简单文本:

{% load i18n %}
<h2>{% trans 'How It Works' %}</h2>

我在设置中添加了以下内容:

USE_I18N = True

USE_L10N = True

USE_TZ = True

LOCALE_PATHS = [
    os.path.join(BASE_DIR, 'locale'),
]

LANGUAGE_CODE = 'es'

from django.utils.translation import ugettext_lazy as _
LANGUAGES = (
    ('en', _('English')),
    ('ca', _('Catalan')),
    ('es', _('Spanish')),
)

我已经生成了.po翻译文件:

django-admin makemessages

我创建了一个样本翻译:

#: templates/index.html:112
msgid "How It Works"
msgstr "espanol test"

我已将Chrome浏览器更改为使用西班牙语,例如:https://developer.chrome.com/extensions/i18n#testing-mac

我想当我进入我的页面时,“它是如何工作”文本会说“espanol test”但它没有。

我做错了是不能渲染翻译?

1 个答案:

答案 0 :(得分:1)

我发现在使用make-messages创建翻译后,您必须运行:

django-admin compilemessages