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

Flask项目ImportError求助:无法从website导入create_app

解决ImportError: cannot import name 'create_app' from 'website'

核心问题:文件结构摆放错误

你目前把__init__.py、auth.py、views.py、models.py放在了templates子文件夹里,这不符合Python包的导入规则——__init__.py必须放在website主文件夹下,才能让Python将website识别为可导入的模块包。

1. 修正项目文件结构

改成标准的Flask项目结构:

项目根目录/
├── main.py
└── website/
    ├── __init__.py  # 移到该位置
    ├── auth.py      # 移到该位置
    ├── views.py     # 移到该位置
    ├── models.py    # 移到该位置
    ├── static/
    └── templates/

2. 确认__init__.py中的create_app定义

保证website/__init__.py里正确实现了create_app函数,示例代码如下:

from flask import Flask

def create_app():
    app = Flask(__name__)
    # 示例:注册蓝图(根据你的项目需求调整)
    from .views import views
    from .auth import auth
    app.register_blueprint(views, url_prefix='/')
    app.register_blueprint(auth, url_prefix='/')
    
    return app

3. 正确运行main.py

main.py的导入代码保持不变,但必须在项目根目录(即存放main.py和website文件夹的目录)下执行该文件,不要进入website文件夹内运行。

额外排查要点

  • 检查__init__.py中create_app的拼写是否正确,避免因笔误导致无法识别
  • 确认你的Python环境中没有全局安装同名的website包,防止命名冲突

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 17:54:28