You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask项目导入Blueprint报错:ModuleNotFoundError问题求助

解决Flask蓝图导入的ModuleNotFoundError问题

问题根源

你的resource文件夹缺少__init__.py文件,Python不会将没有该文件的文件夹识别为可导入的包;同时导入路径的上下文和运行方式也会影响导入有效性。

分步解决

1. 把resource转为Python包

在resource文件夹下创建一个空的__init__.py文件,修改后的文件结构应为:

├── app
│   ├── resource
│   │   ├── __init__.py
│   │   └── user.py
│   └── app.py

2. 选择正确的导入方式

方式一:相对导入(推荐在同一包内使用)

在app.py中使用相对路径导入蓝图:

from .resource.user import users

运行时需从项目根目录(app文件夹的上级目录)执行:

python -m app.app

方式二:绝对导入

如果偏好绝对导入,需要确保项目根目录被Python识别,可在app.py开头添加以下代码,将当前文件所在目录加入Python路径:

import sys
import os
sys.path.append(os.path.dirname(os.path.abspath(__file__)))

之后就可以使用绝对导入语句:

from app.resource.user import users

3. 确保蓝图注册正确

最后别忘了在app.py中注册蓝图:

from flask import Flask
# 这里替换为你实际使用的导入语句
from .resource.user import users

app = Flask(__name__)
app.register_blueprint(users)

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

内容的提问来源于stack exchange,提问作者Dhruvin Kalathiya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:03:12