我正在创建一个Django应用程序,允许访问者每周对列表进行一次投票。我的应用程序没有用户模型,因此我要做的是将特定密钥的会话设置为True
,以表示用户已对该列表进行了投票。例如
request.session['a'] = True
request.session.set_expiry(604800)
这样可以正常工作但会话到期是为整个会话设置的,而不仅仅是那个键。如何在Django会话中为特定密钥设置到期日期?
答案 0 :(得分:2)
据我所知,没有办法让特定的密钥过期。作为一种解决方法,我建议存储日期/时间,以便' a'已设置或更新。
使用此数据,您可以创建一个中间件,根据会话数据的大小,可能会相当繁重,或者创建一个cron作业,以定期运行,以使所有键设置的日期/时间到期/更新超出了你的门槛。