У меня есть приложение Django (на Google App Engine), которое я хочу интернационализировать.
settings.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',
...
Я сгенерировал файлы .po и .mo для своего приложения в locale / fr / LC_MESSAGES (хотя и не на глобальном уровне).
Я установил в браузере заголовок Accept-Language на "fr", а Django его игнорирует. Когда я смотрю на request.LANGUAGE_CODE, это всегда "en".
Я могу сказать, что браузер работает правильно, потому что я захожу на другой сайт, поддерживающий i18n, и он возвращает французский язык.
Как мне найти то, что, по мнению Django, отсутствует в моей настройке?
Я видел этот вопрос , и он мне не помог.
Я запускаю Django 1.0 с помощью патча движка приложения 1.0.2.2 в Google App Engine.