Перевел сайт на голандский.
В настройках все выставил:
USE_I18N = True
LANGUAGE_CODE = 'nl'
LANGUAGES = (
('en', 'English'),
('nl', 'Holland'),
)
LOCALE_PATHS = (
location('locale'),
)
Урлы без переводов, там такая логика.
Если закомментировать в settings 'django.middleware.locale.LocaleMiddleware', то язык голандский, но иногда, например при переходе на страницу результатов поиска, сам по себе опять становится английский. Если поиск без параметров, то все ок - голандский. Если же расмментировать LocaleMiddleware, то всегда англ.
Добавил еще такой middleware, тоже не помогло:
class ForceDefaultLanguageMiddleware(object):
def process_request(self, request):
if request.META.has_key('HTTP_ACCEPT_LANGUAGE'):
del request.META['HTTP_ACCEPT_LANGUAGE']
Видел такое описание:
Джанго определяет язык пользователя так (если не нашёл, то идёт дальше):
Ищет ключ django_language в сессии пользователя
Ищет в cookies
Ищет Accept-Language в HTTP-заголовках, и пытается отыскать разрешённые в приложении (в переменной LANGUAGES) языки
Использует значение переменной LANGUAGE_CODE
Как железно задать голандский язык навсегда? Англ. не используется, а служит только для меток при копировании сайта и переводе его на другие языки(отдельные сайты).