我在Django1.6中面临语言更改功能的问题

时间:2015-01-23 12:20:13

标签: python-2.7 django-1.6 django-multilingual

我正在更改语言运行时并在会话变量中更新它。

我需要调用一个在每个方法调用之前运行的函数,因为必须为每个请求激活语言。为此,我已经在" process_request"中编写了一个中间件。和#34; process_response"函数,我正在从会话中读取语言并激活它。

它在html文件(即内部模板)中正常工作,但来自* .py文件的文本不会立即更新。甚至在重新启动服务器之后,甚至在删除* .pyc文件之后都没有。

如果我不在网站上执行任何活动20-30秒,那么在重新加载语言后,* .py文件的文本也会更新。

1 个答案:

答案 0 :(得分:0)

对于翻译,我使用的是django.utils.translation的ugettext()。

将它从ugettext()更改为ugettext_lazy()为我工作。

有关ugettext_lazy的更多信息,请参阅When should I use ugettext_lazy?