嗨,伙计们,我是Python的新手,我正在为一个简单的flask应用程序构造一个装饰器。我一直收到一个运行时错误:在请求上下文之外工作。这是完整的stacktrace,不知道我做错了什么可能是noob错误
这是我的代码:
from flask import Flask, session
from flask import session
from functools import wraps
app = Flask(__name__)
def check_login(function):
@wraps(function)
def decorated_function(*args, **kwargs):
if 'logged_in' in session:
return function(*args, **kwargs)
return 'You are NOT logged in. Please log in to continue'
return decorated_function()
@app.route('/')
def default_route():
return 'This is the default page.'
@app.route('/page1')
@check_login
def page_one():
return 'This is page1.'
app.secret_key = 'Youwillneverguess'
if __name__=='__main__':
app.run(debug=True)
正如我说的,我是python新手,如果你们能给我任何帮助,我将不胜感激
应该是
^{pr2}$注意在第二个例子中缺少尾随括号。在第一个示例中,您调用的是
decorated_function
,而不是返回它。在相关问题 更多 >
编程相关推荐