我有一个 Django 应用程序(在 Google App Engine 上),我希望将其国际化。
设置.py:
USE_I18N = True
LANGUAGE_CODE = 'en'
# Restrict supported languages (and JS media generation)
LANGUAGES = (
('en', 'English'),
('fr', 'French'),
)
MIDDLEWARE_CLASSES = (
'ragendja.middleware.ErrorMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
# i18n
'django.middleware.locale.LocaleMiddleware',
...
我已在 locale/fr/LC_MESSAGES 中为我的应用程序生成了 .po 和 .mo 文件(尽管不是在全局级别)。
我将浏览器接受语言标题设置为“fr”,Django 忽略它。当我查看 request.LANGUAGE_CODE 时,它始终是“en”。
我可以判断浏览器是正确的,因为我访问其他一些支持 i18n 的网站并且它返回法语。
如何找到 Django 认为我的设置缺少的内容?
I saw 这个问题 https://stackoverflow.com/questions/1230315/cant-switch-language-environment-in-django这对我没有帮助。
我正在 Google App Engine 上使用应用程序引擎补丁 1.0.2.2 运行 Django 1.0。