Python 在Odoo 8中设置会话超时

Python 在Odoo 8中设置会话超时,python,openerp,odoo,Python,Openerp,Odoo,我需要在Odoo 8中设置会话超时。这可以在ODOO7中通过修改http.py中的time-in-session_-gc方法来实现。但我在奥多7中也尝试了同样的方法,但似乎不起作用。我想知道是否有人能解决这个问题。下面是我在OpenERP7中修改的代码,以完成此任务 def session_gc(session_store): if random.random() < 0.001: # we keep session one week last_week = time.ti

我需要在Odoo 8中设置会话超时。这可以在ODOO7中通过修改http.py中的time-in-session_-gc方法来实现。但我在奥多7中也尝试了同样的方法,但似乎不起作用。我想知道是否有人能解决这个问题。下面是我在OpenERP7中修改的代码,以完成此任务

def session_gc(session_store):
if random.random() < 0.001:
    # we keep session one week
    last_week = time.time() - x
    for fname in os.listdir(session_store.path):
        path = os.path.join(session_store.path, fname)
        try:
            if os.path.getmtime(path) < last_week:
                os.unlink(path)
        except OSError:
            pass
这里x是会话超时的秒数。当我在端口9069上运行时,它似乎工作正常,但在默认端口上,它抛出了一个错误

注意:要么这样,要么我需要一个方法根据特定日期注销用户。我通过重写authenticate方法来实现这一点,但是如果用户让它登录,问题就会出现。身份验证仅在登录时进行检查

感谢和问候


Yaseen Shareef

相同的功能在odoo 8中可用。唯一的区别是http.py文件位于odoo目录的根目录,而不是addons/web中。 还有一件事。如果您的服务器没有很重的请求,那么最好增加随机值的上限:例如


如果random.random<0.1:

我们的团队称为ITS-1,已经创建了一个名为web\u会话的模块

可在GitHub上获得:

它获取用户的最新操作日期时间,将其存储在用户表中,并使用此值计算用户是否应保持登录系统。会话长度参数可以在设置->配置->常规设置中设置,所需格式为HH:MM,默认为02:00 2小时。此外,您还可以在用户列表视图中查看每个用户的最新操作日期时间

如果您能提供一些反馈和改进建议,我们将不胜感激

希望这有帮助