我有一个翻译不能在Django 1.6上工作的问题!我已经添加到我的settings.py中
LANGUAGE_CODE = 'en-us' ugettext = lambda s: s LANGUAGES = ( ('en', ugettext('English')), ('de', ugettext('German')), )
还添加了中间件:
MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', )
以及我的*.py文件,每当我使用一个字符串,它应该是l10nd:
from django.utils.translation import ugettext_lazy as _
我的模板以
{% extends "base.html" %} {% load i18n %}
并且在模板内部比我使用trans占位符.例如
{% trans "Register a tank" %}
事实上,字符串出现在locale/de/LC_MESSAGES/django.po中,当我运行时我已经翻译了它们.例如
msgid "Register a tank" msgstr "Einen neuen Tank anmelden"
我的浏览器设置为首先请求德语内容: 浏览器设置
我错过了什么?
PS我目前正在模糊的项目是在github上托管的:https://github.com/frlan/blankspot