2016-08-29 98 views
0

我使用的是Django 1.10。我想要的是,添加中文翻译到我的页面。django 1.10翻译,尽管语言切换,没有翻译出现

尽管语言切换到zh-hans,但翻译并未成功显示。

我指的是官方指南https://docs.djangoproject.com/en/1.10/topics/i18n/translation/ 这是我的代码。 (我使用本地)

settings.py

... 
MIDDLEWARE = [ 
    ... 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.locale.LocaleMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    ... 
] 
TEMPLATES = [ 
    { ... 
     'OPTIONS': { 
      'context_processors': [ 
       'django.template.context_processors.i18n', 
       ... 
      ],},},] 
LANGUAGE_CODE = 'en-us' 
TIME_ZONE = 'Asia/Shanghai' 
USE_I18N = True 
USE_L10N = True 
USE_TZ = True 
LOCALE_PATHS = (os.path.join(BASE_DIR, 'locale')) 
... 

的index.html,这是在 “家” 的应用程序:

... 
 
<!-- Current language: {{ LANGUAGE_CODE }} --> 
 
<p>{% blocktrans %}Harbor. Shelter. WC. SDK.{% endblocktrans %}</p> 
 
...

django.po,位于(根)/ locale/zh_hans/LC_MESSAGES

#: home/templates/home/index.html:23 msgid "Harbor. Shelter. WC. SDK." msgstr "高端黑" 

然后我重新编译消息,重新启动服务器,然后重新加载页面。 (我正在使用go-incognito,这意味着没有缓存存在。)

从评论部分的{{LANGUAGE_CODE}},我可以看到语言已经很好转,已经是“zh-hans”了。

但是,翻译没有出现,字符串仍然是“Harbor。Shelter。WC。SDK。”,仍然未翻译。

出了什么问题?我错过了什么?

回答

0

你可能已经解决了这个问题,因为你发布这个很久以前,但这是我发现的作品。以为我会让你知道以防万一。

我找到了解决方案(我不知道为什么它的工作原理......必须是一个bug)是用下划线和资本H.

因此,它看起来像创建语言文件夹:

django-admin makemessages -l zh_Hans