我正在更改app控制器中的区域设置
before_filter :set_locale
def set_locale
I18n.locale = params[:hl] || I18n.default_locale
end
表示包含渲染部分的页面,并且具有生成菜单项的布局。
页面中的静态文本将转换为新的区域设置,但布局中的静态文本不会,包括已生成的菜单项。
这看起来像是一个线程问题。
是否有人遇到过I18n的这种行为?
答案 0 :(得分:0)
我找到了一个解决方法,将default_locale设置为before_filter中的新语言环境,并在after_filter中将default_locale设置回其初始值。
但是,如果有人访问该网站的某个实例,而某个其他实例,由用户更改其语言环境运行,则尚未调用after_filter但它将显示错误的语言(新的语言环境集)?