我正在更改语言运行时并在会话变量中更新它。
我需要调用一个在每个方法调用之前运行的函数,因为必须为每个请求激活语言。为此,我已经在" process_request"中编写了一个中间件。和#34; process_response"函数,我正在从会话中读取语言并激活它。
它在html文件(即内部模板)中正常工作,但来自* .py文件的文本不会立即更新。甚至在重新启动服务器之后,甚至在删除* .pyc文件之后都没有。
如果我不在网站上执行任何活动20-30秒,那么在重新加载语言后,* .py文件的文本也会更新。
答案 0 :(得分:0)
对于翻译,我使用的是django.utils.translation的ugettext()。
将它从ugettext()更改为ugettext_lazy()为我工作。
有关ugettext_lazy的更多信息,请参阅When should I use ugettext_lazy?