Настройка локали отдельно на странице регистрации и после входа в систему - PullRequest
0 голосов
/ 27 апреля 2018

У меня есть приложение с аутентификацией пользователя, в котором я хочу сохранить локаль в пользовательской модели. Я хочу выбрать язык в двух местах - на странице входа и на странице профиля пользователя.

Я хочу, чтобы приложение работало следующим образом:

  1. Пользователь впервые входит в систему : его предпочтительный язык устанавливается в зависимости от языка, выбранного при просмотре регистрации / регистрации.
  2. Это не первый раз, когда пользователь входит в систему : языковой стандарт берется из модели пользователя, поэтому, если пользователь изменил язык с русского на английский на странице регистрации, но в своем профиле в качестве выбранного языка был выбран русский язык, Приложение не учитывает выбор языка на странице регистрации и будет отображаться на русском языке после входа в систему.

В контроллере приложения у меня, конечно, есть метод set locale, который на данный момент выглядит следующим образом:

def set_locale
  if current_user
     I18n.locale = current_user.locale 
  else
     I18n.default_locale
  end
end

Итак, теперь к моему вопросу: как мне управлять настройкой локали на странице регистрации? И как сохранить эту информацию при входе в систему? Cookie? Params?
На странице входа у меня есть два просмотра - просмотр входа и просмотр регистрации. Если я поменяю язык на странице регистрации и перейду на страницу регистрации, я бы тоже хотел сохранить новый язык.

...