会话和语言的python / django问题

时间:2011-03-04 23:24:04

标签: django django-templates django-views

我有以下问题:在主页面上我可以更改语言。新语言保存在request.session ['django_language']中。我也将SESSION_COOKIE_DOMAIN设置为我的网站,因此会话应该由子域继承。它是,因为在更改语言之后我在子域中检查request.session ['django_language']并且没关系。然后我用

django.middleware.locale.LocaleMiddleware

翻译我的网页。它完美地工作......只在主站点上!如果我改变语言并刷新主站点 - 没关系。但是,如果我更改语言并转到子页面(例如/ LogIn),则页面根本不会被翻译。它保持默认语言。这真的很奇怪,因为如果我使用

{%load i18n%} {%get_current_language as lang%}

在这个子页面中,然后lang是很好的语言。没有错。它会是什么问题?一些建议?

1 个答案:

答案 0 :(得分:0)

似乎使用ugettext是问题所在。我改为ugettext_lazy,现在它完美无缺。出于某种原因,ugettext用旧语言翻译。现在工作正常。