Thursday, October 8, 2009

django-localeurl

Форкнул я тут django-localeurl. Что сделал?

  • Тепреь слеш добавляется, т.е. если раньше после захода на скажем /join был редирект сначала на /en/join, а потом CommonMiddleware редиректила на /en/join/, то сейчас сразу идет редирект на /en/join/. Код выдрал из CommonMiddleware

  • Язык теперь по дефолту детектится, а не берется из settings.py. Детектится через translation.get_language_from_request. Т.е. сначала смотрится в сессии django_language, потом смотрися в куках то, что указано в settings.LANGUAGE_COOKIE_NAME, потом разбирается HTTP_ACCEPT_LANGUAGE. Если ничего не помогло, то берется дефолтный, т.е. settings.LANGUAGE_CODE. Что бы все это работало, надо что бы SessionMiddleware и AuthenticationMiddleware были прописаны до LocaleURLMiddleware, т.е. необходимо, что бы и сесия и юзер были в request.


Лежит все на битбукете.

Быдолкод? Наверное да.



No comments:

Post a Comment

Labels