Web.py 验证用户是否已经登录

一般有两种办法:装饰器和基类

装饰器:

def admin_required(func):
    def Function(*args,**kargs):
        isLogin = web.ctx.session.get('isLogin',0)
        if isLogin == 0:
            web.seeother('/admin/login/',absolute=True)
        else:
            return func(*args,**kargs)
    return Function

基类:

class AuthBase:
    def __init__(self):
        isLogin = web.ctx.session.get('isLogin',0)
        if isLogin == 0:
            raise web.seeother('/admin/login/',absolute=True)

不过在实际项目中,装饰器一直没用上,老是出错。

推荐基类实现。

posted @ 2010-12-09 09:41  Crazy Enzo  阅读(907)  评论(0编辑  收藏  举报