首先先记录下flask_sqlalchemy的数据库建立和删除

进入python控制台:

新建数据库

from app import db
db.create_all()

删除数据库

from app import db
db.drop_all()

建立好数据库模型执行上面的语句就可以,但是,觉得很简单的一个事情就这样坑了。

models建立搞好了两个表,本来觉得执行建立数据库就万事大吉的,但神奇的事情发生了,报错。

raise RuntimeError( RuntimeError: No application found. Either work inside a view function or push an application context. See http://flask-sqlalchemy.pocoo.org/contexts/.

完全蒙圈,黑人问号脸+WTF...检查了模型是不是有写错的地方,检查了各个配置的地方都没有异常,网上更多的教程是说

db = SQLAlchemy()

db = SQLAlchemy(app)

结果然并卵。

继续找了很多资料后才发现,原因是没有找到app。说白了,就是还没有找到实例化的app,就调用了他的功能。
但在app.py里面是调用了的啊

db.init_app(app)

但资料说,关键的就在这里,只要在这下面加上一个

db.app=app

然后,就真的好了....WTF,好大个坑

最后修改:2021 年 12 月 16 日
如果觉得我的文章对你有用,请随意赞赏