Python 使用装饰器将用户对象传递给flask视图

Python 使用装饰器将用户对象传递给flask视图,python,flask,Python,Flask,我希望我的授权装饰器能够将自定义用户对象传递给它装饰的视图 目前,我正在让装饰者在flask.g上设置一个属性来完成这项工作。烧瓶.g的使用是否可以接受,或者有更好的方法吗 我的代码如下所示: def auth(f): @wraps(f): def decorated(*args, **kwargs): user = getUserObj(request.headers.get('user'), request.headers.get('pass'))

我希望我的授权装饰器能够将自定义用户对象传递给它装饰的视图

目前,我正在让装饰者在flask.g上设置一个属性来完成这项工作。烧瓶.g的使用是否可以接受,或者有更好的方法吗

我的代码如下所示:

def auth(f):
    @wraps(f):
    def decorated(*args, **kwargs):
        user = getUserObj(request.headers.get('user'), request.headers.get('pass'))
        flask.g.user = user
        return f(*args, **kwargs)
    return decorated
然后是:

@api.route('/info')
@auth
def info():
    flask.g.user # this contains my user object now

我就是这样做的,到目前为止它似乎没有任何问题。为什么不为此使用
flask.g
flask.request
上下文?