持久化会话数据 Django



我需要在会话数据销毁时(例如,当浏览器关闭或过期日期时)将会话数据迁移到数据库中的另一个表。我读到会话没有自行清除,我需要手动完成。

默认情况下,

Django 会话会持久化到数据库中。

阅读文档:

https://docs.djangoproject.com/en/dev/topics/http/sessions/#configuring-the-session-enginehttps://docs.djangoproject.com/en/dev/topics/http/sessions/#when-sessions-are-savedhttps://docs.djangoproject.com/en/dev/topics/http/sessions/#clearing-the-session-store

更新:

Django "知道"会话已过期的唯一情况是用户手动注销。在这种情况下,您可以连接到user_logged_out信号来执行数据迁移。

否则,旧会话数据将保留在数据库中。Django 提供了删除旧会话的clearsessions管理命令。他们建议您每天在 crontab 上运行它。

您可以编写自己的该命令版本,该版本也可以执行数据迁移。

最新更新