【发布时间】:2012-08-23 10:01:27
【问题描述】:
在视图中,是否有一种简单的方法可以判断这是否是会话中的第一个命中?
我寻找了一些明显的东西,比如将 session-create-date 与 session-last-accessed-date 进行比较,但这些字段似乎不存在。
我可以在会话数据中设置一个自定义键,然后如果缺少该键,则假定它是一个新会话,但我想知道是否有更简洁的方法。
谢谢!
【问题讨论】:
-
好像不是重复的。
在视图中,是否有一种简单的方法可以判断这是否是会话中的第一个命中?
我寻找了一些明显的东西,比如将 session-create-date 与 session-last-accessed-date 进行比较,但这些字段似乎不存在。
我可以在会话数据中设置一个自定义键,然后如果缺少该键,则假定它是一个新会话,但我想知道是否有更简洁的方法。
谢谢!
【问题讨论】:
您如何通过settings.SESSION_COOKIE_AGE 减去my_session.get_expiry_age() 来计算它。越接近 0,会话越新。不确定尽管对于首次点击会话而言这始终为零。
【讨论】:
您可以使用 session_key。如果 request.session.session_key 为 None,则表示 session 对象是新的,尚未保存到数据库中。
【讨论】: