如何从Django中的信号处理程序获取会话

Mic*_*ick 6 django

我正在实施一个简单的推荐系统.我有中间件设置一个标识引用用户的会话变量.我有一个模型,它将推荐用户与推荐用户联系起来.我正在尝试使用User对象的post_save信号来填充此模型.如何从post_save信号处理程序中访问会话对象?

Rob*_*rne 1

没有办法不使用线程特定的全局变量

但我不确定你是否需要这样做。对于我的推荐和邀请系统,我只需让用户正常注册,然后在创建用户后,从会话中获取推荐。在几乎所有情况下,它仍然是同一个会话。

如果您的会话中有某些内容阻止了这种情况,我会将其添加到创建用户表单中。