1

我知道 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
4

1 回答 1

1
def lang_set
 if params[:locale] != nil
  cookies.permanent[:locale] = params[:locale]
 end
 I18n.locale = cookies[:locale]
end
于 2013-09-30T18:18:37.857 回答