rails 3.1 Перезагрузить страницу с другой локалью?

Я следил за этим прекрасным сайтом, чтобы интернационализировать свой сайт.

Однако я не могу понять, как перезагрузить страницу с другой локалью, когда пользователь нажимает кнопку языка.

Пример: если пользователь находится здесь:

/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 для перезагрузки страницы?


person Sergio Nekora    schedule 12.04.2012    source источник
comment
вы можете вернуться на предыдущую страницу, см. заголовок stackoverflow.com/questions/4652084/   -  person gayavat    schedule 12.04.2012
comment
Я пробовал это раньше, но, насколько я помню, загружает страницу со старой локалью, потому что локаль указана в URL-адресе.   -  person Sergio Nekora    schedule 12.04.2012
comment
попробуйте проанализировать URL-адрес и изменить параметры [: locale], см. a-rails-test" title="как легко проанализировать URL-адрес с параметрами в тесте rails"> stackoverflow.com/questions/916067/   -  person gayavat    schedule 12.04.2012