Rails では、ブラウザーを閉じたときに Cookie を保持するために何らかの構成が必要であることを理解しています。Cookie が適切に設定され、ブラウザを開いたまま目的の結果を得ることができます。しかし、ブラウザを閉じて再度開いてサイトにアクセスすると、Cookie データが失われているようです。
適切なコントローラーでこれを行いました:
cookies[:locale] = { value: params[:locale], expires: 1.year.from_now }
私も session_store.rb でこれを行いました:
myApp::Application.config.session_store :cookie_store, {
:expire_after => nil,
}
単純なコマンドのようです。私は何が欠けていますか?
明確にするために完全な条件付きを編集します-
def lang_set
if params[:locale] != nil
cookies.permanent[:locale] = params[:locale]
end
I18n.locale = cookies[:locale]
end