如何在OpenERP中实现会话超时

如何在OpenERP中实现会话超时,openerp,openerp-7,Openerp,Openerp 7,如果会话时间超过30分钟,我想自动从OpenERP会话注销。这可以通过编辑../addons/web/http.py中的会话\u gc方法来完成。下面的代码说明了您的需要--删除或注释掉if条件(并相应取消以下行的缩进): def session_gc(session_存储): #如果random.random()

如果会话时间超过30分钟,我想自动从OpenERP会话注销。

这可以通过编辑
../addons/web/http.py
中的
会话\u gc
方法来完成。下面的代码说明了您的需要--删除或注释掉
if
条件(并相应取消以下行的缩进):

def session_gc(session_存储):
#如果random.random()<0.001:
#我们每周一节课
上周=time.time()-x
对于os.listdir(session_store.path)中的fname:
path=os.path.join(session\u store.path,fname)
尝试:
如果os.path.getmtime(path)<上周:
操作系统取消链接(路径)
除操作错误外:
通过

x
是根据您的需要超时的秒数。

非常感谢。它工作得很好。在我错过删除IF条件之前。再次感谢。如果Yaseen的回答对您有效,请接受它。(点击答案分数附近的复选标记。)
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