跳转到主要内容

在Django中管理唯一和定时会话

项目描述

简介

utsessions 允许在Django中为用户帐户提供定时和唯一会话功能。

它做了什么?

utsessions 是一个中间件,它使所有打开的用户会话都是唯一的。

当用户会话打开时,在一段时间内,用户帐户不能被重复使用。在这段时间之后,如果用户帐户被重复使用,第一个会话将被关闭,然后打开第二个会话。

会话也可以在选定的时间后自动关闭。

这种行为对提供通过唯一用户帐户访问数据的网站非常有用。

哲学

utsessions 的编写是为了容易

  • 在你的项目中安装,只需注册中间件。

  • 由于它的设计,每个组件都可以被移除或重用。

  • 通过settings.py文件进行配置,该文件允许不同的行为。

安装

http://code.google.com/p/django-ut-sessions/ 下载最新打包版本,并解压缩。

您也可以进行Subversion检出以获取最新代码。

svn checkout http://django-ut-sessions.googlecode.com/svn/trunk/ django-ut-sessions

在包内部,使用以下命令行将包安装到您的PYTHONPATH中。

$> python setup.py install

项目安装

现在只需将以下行添加到您的 MIDDLEWARE_CLASSES 部分。

utsessions.middleware.UTSessionMiddleware

它必须在SessionMiddleware和AuthentifcationMiddleware之后,如下所示

MIDDLEWARE_CLASSES = (
  'django.middleware.common.CommonMiddleware',
  'django.contrib.sessions.middleware.SessionMiddleware',
  'django.contrib.auth.middleware.AuthenticationMiddleware',
  'utsessions.middleware.UTSessionMiddleware',
)

设置

如果您想定义会话在注销前的有效期,请将秒数设置在settings.py中的 SESSION_LIMIT_SECONDS

会话可以在默认的300秒内释放给其他用户。要更改此值,请定义SESSION_TOKEN_LIMIT_SECONDS。如果设置为0,则不会创建锁。

测试

将utsessions放入你的INSTALLED_APPS部分,并运行

$> python manage.py test utsessions

项目详情


下载文件

下载适用于您平台的自定义文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

utsessions-0.2dev-r6.tar.gz (4.1 kB 查看哈希值)

上传时间

构建分布

utsessions-0.2dev_r6-py2.4.egg (9.2 kB 查看哈希值)

上传时间

由以下提供支持