我已经调试了半天了......有人有想法吗?
我写了一个 python 脚本来监控活动会话,发现这个:
sessions = Session.objects.filter(expire_date__gte=datetime.now())
for session in sessions:
data = session.get_decoded()
id = data.get('_auth_user_id', None)
ses = session.session_key
if id:
name = User.objects.get(id=id)
给出了很好的清单...好的。但是——如果用户注销或登录,上面的代码不会反映更改。它只是不断重复原始的、过时的列表。
有缓存问题吗?不要想——禁用memcached,没有变化。尝试了基于文件和内存缓存的会话存储——奇怪的结果:上面的代码似乎读取了基于 db 的会话存储。
所以,我怀疑 1.4.3 的初始化是不正确的——因为似乎有各种初始化环境的方法。我相信1.4。不需要将环境变量 DJANGO_SETTINGS_MODULE 设置为应用程序。
接下来,如果这不能解决..必须使用基于文件的会话存储并轮询目录..这似乎是实时的并且正在运行:)