rails-I18n-更改语言环境时,不会转换部分内容

时间:2010-03-10 19:08:36

标签: ruby-on-rails internationalization

我正在更改app控制器中的区域设置

before_filter :set_locale
def set_locale 
  I18n.locale = params[:hl] || I18n.default_locale 
end

表示包含渲染部分的页面,并且具有生成菜单项的布局。

页面中的静态文本将转换为新的区域设置,但布局中的静态文本不会,包括已生成的菜单项。

这看起来像是一个线程问题。

是否有人遇到过I18n的这种行为?

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方法,将default_locale设置为before_filter中的新语言环境,并在after_filter中将default_locale设置回其初始值。

但是,如果有人访问该网站的某个实例,而某个其他实例,由用户更改其语言环境运行,则尚未调用after_filter但它将显示错误的语言(新的语言环境集)?