我在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”但它没有。
我做错了是不能渲染翻译?
答案 0 :(得分:1)
我发现在使用make-messages创建翻译后,您必须运行:
django-admin compilemessages