通过蓝图连接的功能未执行

问题描述 投票:0回答:1

烧瓶

我将配置文件功能连接到主应用程序,在其中注册蓝图,将其添加到主应用程序。我添加了调试输出来检查函数是否正在运行,但它们没有输出任何内容 这是我的代码

views.py

...
views_bp = Blueprint('views', __name__)

@views_bp.route('/profile')
@login_required
def profile():
    print("In profile route")
    print(f"Session: {session}")
    #debug
    if current_user.is_authenticated:
        print(f"Current user: {current_user.id}")
    else:
        print("No user authenticated.")
...

创建_app.py

...
from views import views_bp
from models import User, db

login_manager = LoginManager()

def create_app():
    pymysql.install_as_MySQLdb

    app = Flask(__name__)
    @app.route('/')
    def index():
        return render_template('index.html')
    app.config['SQLALCHEMY_DATABASE_URI'] = '<db.url>'
    app.config['SECRET_KEY'] = '<my secret code>' 

    db.init_app(app)
    login_manager = LoginManager()
    login_manager.init_app(app)
    @login_manager.user_loader
    def load_user(user_id):
        return User.query.get(int(user_id))
    


    app.register_blueprint(auth_blueprint)
    app.register_blueprint(views_bp, url_prefix='/auth')



    return app
...

我尝试将以下代码添加到同一文件中:

...
@views_bp.route('/test')
def test():
    return "Test Page"
...

它成功了,我在 http://127.0.0.1:5000/auth/test

上看到了“测试页面”

我还尝试删除@login_required以查看是否有问题,但没有。

我不知道,很可能是一些非常愚蠢的错误,但我很久没找到它

如果我需要在问题中添加一些内容 - 请告诉我

python flask web
1个回答
0
投票

我发现在我的另一个蓝图中我有一个 /profile 的功能,我添加了用于调试,但忘记删除,我觉得很愚蠢

© www.soinside.com 2019 - 2024. All rights reserved.