Python Flask NoAppException : While importing "microblog", 引发了 ImportError:

标签 python flask

__init__.py

from flask import Flask
app = Flask(__name__)
from app import routes

microblog.py, set FLASK_APP=microblog.py

from app import app

app.py

from flask import Flask
app = Flask(__name__)
from app import routes

routes.py

from app import app

@app.route('/')
@app.route('/index')
def index():
    return "Hello, World!"

run.py

#!flask/bin/python
from app import app
app.run(debug=True)

当我执行 flask run 时,我得到:

flask.cli.NoAppException
NoAppException: While importing "microblog", an ImportError was raised:

Traceback (most recent call last):
  File "c:\python27\lib\site-packages\flask\cli.py", line 235, in locate_app
    __import__(module_name)
  File "C:\Users\ACER\FlaskTEST\venv\app\MicroBlog\microblog.py", line 1, in <module>
    from app import app
  File "C:\Users\ACER\FlaskTEST\venv\app\MicroBlog\app\__init__.py", line 5, in <module>
    from app import routes
  File "C:\Users\ACER\FlaskTEST\venv\app\MicroBlog\app\app.py", line 4, in <module>
    from app import routes
ImportError: cannot import name routes

最佳答案

根据 python 模块名称,我假设您正在处理 Flask Mega-Tutorial由 Miguel Grindberg 创建。

Mega-Tutorial的目录结构如下:

当前工作目录:

  • microblog.py
  • 一个名为app的文件夹/目录>

Current_Working_Directory/app:

  • __init__.py
  • routes.py

这里注意你的 python 模块和 Miguel 的两个区别:

  1. 您有一个名为 run.py 的重复文件,它与他的 microblog.py 执行相同的操作。要修复,您可以保留 run.py,将其放在当前工作目录中,然后 set FLASK_APP=run.py 或者您可以删除 run.py 并在调用 flask run 时使用 microblog.py,这将运行您设置为 FLASK_APP 的内容。

  2. 您有一个名为 app.py 的不必要的 python 模块,请删除它,然后您就可以开始了。

请记住,您始终可以查看 Miguel's Microblog GitHub在每章末仔细检查你的代码是否与他的代码匹配。

关于Python Flask NoAppException : While importing "microblog", 引发了 ImportError:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50691085/

相关文章:

python - 向量值多变量函数中的插值

python - 将 matplotlib 图形 Canvas 图像插入 QTextDocument

python - 如何使用一个类来调用不同的类?

python - Flask 如何通过 init_db() 声明性地使用 sqlalchemy?

python - 查找两个数组元素的最大有效组合数

python - 属性错误 : 'str' object has no attribute 'dim' in pytorch

mysql - 如何在Cpanel中自动编辑MySQL数据库

python - Flask/RabbitMQ : consume messages on a separate thread than the app

python - 如何在 python flask 中使用 mysql.connection 数据库池

python - 无法访问 Python 的 init.py 文件中的 Kubernetes env var