【发布时间】:2012-04-12 08:09:52
【问题描述】:
我已按照beautiful site 在我的网站中创建国际化。
但是,当用户单击语言按钮时,我无法弄清楚如何使用不同的语言环境重新加载页面。
示例: 如果用户在这里:
/es/events/14
当用户点击英语重新加载到
/en/events/14
这是视图:
%li= link_to "eu", change_locale_path(:locale => "eu")
%li= link_to "es", change_locale_path(:locale => "es")
%li= link_to "en", change_locale_path(:locale => "en")
%li= link_to "fr", change_locale_path(:locale => "fr")
这是ApplicationController中的方法
def change_locale
if current_user
current_user.locale = params[:locale]
current_user.save
else
I18n.locale = params[:locale]
end
redirect_to root_url (this is temporal)
end
我应该用什么代替redirect_to root_url 来重新加载页面?
【问题讨论】:
-
您可以返回上一页,见stackoverflow.com/questions/4652084/…
-
我之前尝试过,但据我记得使用旧语言环境加载页面,因为语言环境在 url 中
-
尝试解析url并改变params[:locale],见stackoverflow.com/questions/916067/…
标签: ruby-on-rails ruby-on-rails-3.1 rails-3.1