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

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第三方库


热门话题
切换名称节点Hadoop Java api和camel、jms   java首先执行服务器调用,然后执行下一行代码   java如何登录到这样的站点?   C#AES在Java中使用CFB NoPadding模式进行加密   JVM中的java确定性垃圾收集   java在与PC相连的移动设备上读写数据   java jar编译运行时。getRuntime。exec()jar中的完整目录   java HTTP状态500无法转换类型的值   如何获取另一种语言的Java日期   java无法使用安卓 emulator连接到本地服务器   java计算窗口内两个Swing组件的焦点遍历距离   Java字符串将错误与正则表达式匹配   java将请求从servlet发送到jsp   math Java cast未生成预期输出   在Java中,获取字符串最后250个字符的最佳方法是什么?   Java线程同步管理中的静态关键字   项目中的java Eclipse错误   数组JAVA从txt文件读取整数并计算整数