flask 踩坑记录(持续更新)
文章目录
1. flask+sqlalchemy 连接mysl
- 情况描述:db.create_all()报错:
Traceback (most recent call last):
File “flaskee.py”, line 18, in
db.create_all()
File “/home/tylerscope/PycharmProjects/flaskee/venv/lib/python3.6/site-packages/flask_sqlalchemy/init.py”, line 963, in create_all
self._execute_for_all_tables(app, bind, ‘create_all’)
File “/home/tylerscope/PycharmProjects/flaskee/venv/lib/python3.6/site-packages/flask_sqlalchemy/init.py”, line 940, in _execute_for_all_tables
app = self.get_app(app)
File “/home/tylerscope/PycharmProjects/flaskee/venv/lib/python3.6/site-packages/flask_sqlalchemy/init.py”, line 912, in get_app
‘No application found. Either work inside a view function or push’
RuntimeError: No application found. Either work inside a view function or push an application context. See http://flask-sqlalchemy.pocoo.org/contexts/.
- 原因及解决:
- 原因:没有找到app。说白了,就是还没有找到实例化的app,就调用了他的功能。
- 解决:1. 可以在
db.create_all()
前面、db.init_app(app)
后面加一句db.app=app
实例化即可;2. 或者,在视图方法中中调用db.create_all()
.