在遵循此tutorial关于如何构建Flask
应用的过程之后,我有:
project/
__init__.py
app.py
models/
__init__.py
base.py
base.py
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
模型/ __ init __。py
from .base import db
def init_app(app):
db.init_app(app)
项目/ __ init __。py
from flask import Flask
def create_app()
from . import models, routes, services
app = Flask(__name__)
models.init_app(app)
# routes.init_app(app)
# services.init_app(app)
return app
最后,我尝试在 app.py 中运行它:
from . import create_app
app = create_app()
if __name__ == '__main__':
app.run(use_reloader=True, threaded=True, debug=True)
但是我遇到了错误:
from . import create_app
ValueError: Attempted relative import in non-package
我的建筑正确吗,我在做什么错了?
答案 0 :(得分:0)
我猜您正在通过以下方式运行程序:
python project/app.py
在这种情况下,您不会将“项目”视为python包,这会引发错误。相反,您可以使用以下命令运行项目:
FLASK_APP=project.app flask run