比如:
def required ( x ):
    def decorator ( f ):
    	def wrapper (*args, **kws ):
            if x:
            	return f(*args, **kws)
            else:
            	abort
        return wrapper
    return decoator
@app.route('/')
@required(x)
def main():
	return
那么我访问, http ://localhost : 5000 时,如何像 required 传递参数呢? 可以直接通过在装饰器里获取参数吗?比如:
request.args.get('x')
|  |      1strahe      2016-03-22 10:06:07 +08:00 可以直接通过在装饰器里获取参数,但是就没必要写带参数的装饰器了,因为你是在里面获取参数的,而不需要外面传进去, | 
|  |      2strahe      2016-03-22 10:08:36 +08:00 可以把 x = request.args.get('x') 写到 wrapper 里面,把最面外那一层去掉, 也可以在调用 required 时传入: `@required(x)` | 
|  |      3Mithrandir      2016-03-22 10:20:40 +08:00 | 
|  |      4hahastudio      2016-03-22 10:38:19 +08:00 如果你想自定义参数的话,可以试试 https://gist.github.com/hahastudio/426a750fb4c7a4beb210 |