首先先记录下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,好大个坑