проблема с python / django с сессиями и языком - PullRequest
0 голосов
/ 05 марта 2011

У меня следующая проблема: на главной странице я могу сменить язык. Новый язык сохраняется в request.session ['django_language']. У меня также есть SESSION_COOKIE_DOMAIN для моего сайта, поэтому сеанс должен наследоваться поддоменами. И это потому, что после смены языка я проверяю request.session ['django_language'] в поддоменах, и это нормально. Тогда я использую

django.middleware.locale.LocaleMiddleware

чтобы перевести мои страницы. И работает отлично ... только на основном сайте! Если я поменяю язык и обновлю основной сайт - это нормально. Однако, если я поменяю язык и зайду на подстраницу (например, / LogIn), то эта страница вообще не будет переведена. Он остается на языке по умолчанию. Это действительно странно, потому что, если я использую

{% загрузки i18n%} {% get_current_language as lang%}

на этой подстранице, тогда lang - хороший язык. Там нет ошибки. Что это за проблема? Некоторые предложения?

1 Ответ

0 голосов
/ 08 марта 2011

Кажется, что использование ugettext было проблемой. Я изменил на ugettext_lazy, и теперь он работает отлично. По какой-то причине ugettext переводится со старого языка. Теперь работает нормально.

...