У меня есть приложение с аутентификацией пользователя, в котором я хочу сохранить локаль в пользовательской модели. Я хочу выбрать язык в двух местах - на странице входа и на странице профиля пользователя.
Я хочу, чтобы приложение работало следующим образом:
- Пользователь впервые входит в систему : его предпочтительный язык устанавливается в зависимости от языка, выбранного при просмотре регистрации / регистрации.
- Это не первый раз, когда пользователь входит в систему : языковой стандарт берется из модели пользователя, поэтому, если пользователь изменил язык с русского на английский на странице регистрации, но в своем профиле в качестве выбранного языка был выбран русский язык, Приложение не учитывает выбор языка на странице регистрации и будет отображаться на русском языке после входа в систему.
В контроллере приложения у меня, конечно, есть метод set locale, который на данный момент выглядит следующим образом:
def set_locale
if current_user
I18n.locale = current_user.locale
else
I18n.default_locale
end
end
Итак, теперь к моему вопросу: как мне управлять настройкой локали на странице регистрации? И как сохранить эту информацию при входе в систему? Cookie? Params?
На странице входа у меня есть два просмотра - просмотр входа и просмотр регистрации. Если я поменяю язык на странице регистрации и перейду на страницу регистрации, я бы тоже хотел сохранить новый язык.