【问题标题】:Set expiry time for a session field设置会话字段的到期时间
【发布时间】:2015-11-20 04:13:14
【问题描述】:

Rails 3 中是否有办法使会话中的字段过期?当我搜索这个时,我只找到了关于如何使整个会话过期的帖子,我不想这样做。

在我的情况下,我有以下情况:

session["END_DATE"] = @end_date

我想告诉Rails 在一定时间后使字段session["END_DATE"] 过期,这与整个会话的全局过期时间不同,而且要短得多。

我总是可以为该字段使用 cookie 而不是会话,但如果可能的话,最好在会话中使用它。

【问题讨论】:

    标签: ruby-on-rails-3 session


    【解决方案1】:

    你可以这样做:

    session.delete(:end_date) 从您的会话中删除某些内容(在您的情况下为 end_date)。

    希望对你有帮助!

    【讨论】:

    • 如果会话保留该字段何时添加的信息,这将起作用。就我而言,我想在一天结束时将其到期。所以我可以做一些类似 if session["end_date"]["time_added_to_session"]
    • 你可以用简单的条件对吗? session.delete(:end_date) if session[:end_date] < Date.today
    • 我允许用户更改该日期,并且我希望用户修改在当天结束之前有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多