当我在虚拟环境中运行代码时。这就是我得到的。
ImportError: cannot import name '_request_ctx_stack' from 'flask.globals'(../venv/lib/python3.10/site-packages/flask/globals.py)
我升级软件包后不断弹出此信息。
这是我的代码。
from flask import Flask, request, render_template, redirect, flash, session
from flask_debugtoolbar import DebugToolbarExtension
app = Flask(__name__)
app.config['SECRET_KEY'] = "This is demo"
app.config['DEBUG_TB_INTERCEPT_REDIRECTS'] = False
deubg = DebugToolbarExtension(app)
@app.route('/')
def home_page():
"""Shows home page"""
return render_template('home.html')
these are my packages on my requirement.txtblinker==1.6.3click==8.1.7Flask==3.0.0Flask-DebugToolbar==0.13.1itsdangerous==2.1.2Jinja2==3.1.2MarkupSafe==2.1.3Werkzeug==3.0.0
我尝试过 pip installflask_debugtoolbar,但似乎找不到解决方案。
我相信这个错误来自 Flask_debugtoolbar 还不支持 Flask 版本 3.0.0。 此 PR 中有针对 Flask_debugtoolbar 的修复,但在撰写本文时尚未发布。
目前,实现此功能的方法是固定到旧版本的 Flask,例如 v2.3.3。