烧瓶中的以下代码(伪代码)使我很困惑。
REPLACE(REPLACE(column, char(10),''),char(13),'')
其中函数IsIllegal用于检查用户是否未登录。我发现,即使用户未登录,func1也会始终打印数据。函数正常返回func1的返回值是非法的。但是我觉得这并不能保存,因为func1中的语句已执行(打印)。我该怎么理解?
答案 0 :(得分:0)
您注册了未经修饰的 func1()
功能。 @IsIllegal()
装饰器结果在@app.route()
装饰器注册后应用,并且在访问路由时从不调用。
可以这么说,装饰器是从内到外以相反的顺序应用的。反转装饰器:
@app.route(..., methods = ['POST'] )
@IsIllegal
def func1():
现在IsIllegal(func1)
的结果已由@app.route(...)
注册,因此访问路由将最终调用decorated()
。