0

我在 Rails 4 中创建了一个应用程序,需要以不同的时间间隔过期 3 个不同的会话,每隔几分钟一个,每小时一个,每个工作日一个。

但是,目前,我的所有 3 个会话似乎同时到期,从这些集合中的最小值(即每 5 分钟一次)中获取它们的到期长度。知道我做错了什么吗?

目前,我尝试在会话存储中设置这些过期时间,如下所示:

Rails.application.config.session_store :cookie_store, key: 'current_customer', expire_after: 60.minutes 
Rails.application.config.session_store :cookie_store, key: 'staff_id', expire_after: 540.minutes
Rails.application.config.session_store :cookie_store, key: 'barcode_ids', expire_after: 5.minutes 

谢谢

4

1 回答 1

1

在您的代码示例中,您实际上将一个值设置了 3 次,并且每次都被新值覆盖。所以实际上它只使用最后一行。

Rails 只为每个用户的每个会话创建一个 cookie,另外两个您应该手动创建。

于 2015-06-29T11:05:31.230 回答