Pylance 警告:routes.py 中 Flask 路由函数的“变量未访问”

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

我正在开发一个 Flask 应用程序来管理学校系统,使用 Visual Studio Code 和 Pylance 作为我的语言服务器。我在

routes.py
文件中定义了多个路由函数,但我不断收到来自 Pylance 的警告,表明这些函数“未访问”。我不确定为什么会发生这种情况,我正在寻求一些指导。

即使我正确导入路由并将其注册到应用程序实例,警告仍然存在。这是我的

routes.py
的片段:

# routes.py
from flask import Blueprint, render_template, redirect, url_for, request, session
from school_hub import db, User  # Importing the database and User model

# Defining the Blueprint
main = Blueprint('main', __name__)

# Registering routes
@main.route('/login', methods=['GET', 'POST'])
def login():
    # Implementation for login
    if request.method == 'POST':
        # Process login
        pass
    return render_template('login.html')

@main.route('/logout')
def logout():
    # Implementation for logout
    pass

@main.route('/')
def index():
    return render_template('index.html')

在我的

app.py
中,我导入并注册路线如下:

# app.py
from flask import Flask
from school_hub import create_app
from school_hub.routes import main

app = create_app()
app.register_blueprint(main)  # Registering the Blueprint

if __name__ == '__main__':
    app.run(debug=True)

环境详情

  • Python版本:3.12
  • 烧瓶版本:2.3
  • 皮兰斯版本:2024.5.0
  • 操作系统:Windows 10

附加信息

我尝试重新加载 Pylance 扩展并刷新项目,但警告仍然存在。我还查看了 Pylance 设置,以了解可能影响其分析代码方式的任何配置。

你尝试了什么?

我使用以下文件构建了 Flask 应用程序:

  • app.py
    :创建应用程序实例的位置。
  • __init__.py
    :初始化应用程序和 SQLAlchemy。
  • routes.py
    :包含应用程序的路由功能。

预期结果

我希望 Pylance 能够识别出这些函数(

login
logout
index
)正被用作 Flask 路由,并且不会将它们显示为“未访问”。我预计一旦我向应用程序实例注册了路线,警告就会消失。

python visual-studio-code flask web-development-server pylance
1个回答
0
投票

我没有发现你的代码有什么问题。这只是来自 Pylance 的警告,由于

routes.py
中的函数是 Flask 的路由处理函数,因此不会在任何地方直接引用。我认为 Pylance 期望在代码中的任何位置调用类似于
routes.logout()
或类似函数的内容,以便将它们视为“已访问”

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