您的代码中有一个循环导入。基于回溯:
app.py
确实from views import site
views.py
确实from models import User
models.py
确实from database_setup import db
database_setup.py
确实from app import app
app.py
确实from views import site
根据这些事件的顺序,
app.py您所发布的不是真正导致您的问题的事件。目前,
app尚未在
views导入之前进行定义,因此当进一步尝试获取时
app,它尚不可用。
您需要重组项目,以便 在 定义 之后
app导入所有依赖项。从您的问题看来,您似乎认为自己确实做到了,但是也许您上面仍然遗漏了一个重要内容。
__
app``app
可能不相关,但是您目前不鼓励使用“相对”导入。
from views import site您应该执行绝对路径:
from app.viewsimport site或相对路径:,而不是执行其他 *** 作
from .views import site。
要回答最初的问题“使用
__main__蓝图导入是个好主意吗?”,不是。这样做的问题是, 仅 在直接运行模块 时才
执行
__main__防护。当您使用uWSGI或Gunicorn等真实的应用服务器进行部署时,不会导入或注册任何蓝图。 __
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)