跟踪用户上次操作的时间。

django-online-users的Python项目详细描述


跟踪每个用户最后一次操作的时间

使用中间件,django在线用户将跟踪每个用户以及他们在数据库中最后一次操作的时间戳。

管理员可以在管理门户中看到这些数据,并且可以使用timedelta查询数据库。

这是针对较小的应用程序的,因为每个http请求都会导致数据库条目更新。

要求

  • Python:2.7、3.3、3.4、3.5、3.6
  • django:1.10+

设置

  1. 将“在线用户”添加到INSTALLED_APPS
INSTALLED_APPS=[...'online_users',]
  1. OnlineNowMiddleware添加到MIDDLEWARE_CLASSES后面的SessionMiddleware
MIDDLEWARE_CLASSES=(...'online_users.middleware.OnlineNowMiddleware',)
  1. 运行python manage.py migrate在数据库中创建表。

使用

fromdatetimeimporttimedelta...user_activity_objects=OnlineUserActivity.get_user_activities()number_of_active_users=user_activity_objects.count()
  • 还可以将timedelta指定给get_user_activities(),以查找活动
fromdatetimeimporttimedelta...user_activity_objects=OnlineUserActivity.get_user_activities(timedelta(minutes=60)users=(userforuserinuser_activity_objects)

API

onlineuseractivity包含两个值:有问题的用户user和存储为datetimefield的时间戳last_activity

OnlineUserActivity.get_user_activities()将在默认情况下返回过去15分钟的onlineuseractivity对象。 开发人员还可以为查询传递不同时间长度的时间增量。响应是一个QuerySet,它包含 在此时间段内的活动用户,项目按时间降序排序。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JMF替换   java从apache网站导入库   如何在cmd/sudo中输入参数并在运行时使用它们?(爪哇)   java如何在page zk framework中触发任何选定的手动事件时保存textbox值   java如何在安卓应用程序中读取弹出窗口中的文本?   java my jsonarray不显示在我的arraylist中   java Spring如何用环境变量替换${}?   JavaRxJava2:迭代项并获得与条件匹配的项   java My mavenearplugin不尊重bundleFileName吗?   java Dropwizard V2端点   java修复语法或拼写错误?   java Netty 4.0 HTTP块内存泄漏?   链表Java结构(泛型)   java在Windows下的Eclipse SWT中使用64位XulRunner