最近做个简单的MIS系统, 趁机读《flask web 开发实战 入门、进阶与原理解析》 李辉。 由于是flask官方团队的人写的。方方面面都很细致。
很多写法、配置,和之前0.X时代也有了不同。正好整理一下。
打破书里的顺序,把自己不熟的地方摘记出来,随写随改。
因为我现在都是前后分离的写法了,所以涉及template, form的知识点就略过了。
感觉需要注意的典有点琐碎。或者说自己之前学的也都是一鳞半爪,结果到处是洞。
所以按自己归纳的topic统一整理一下
未分类
flask并不是mvc框架
,没有内置数据模型。P25
flask的view 相当于Controller function
jinja2的html template 相当于MVC的View
SQLAlchemy 相当于 Model
一、配置与启动
1用 flask run启动。 P14
而不是 在 app.py里
if __name__ == ‘__main__‘:
app.run()
flask会自动发现app.py和wsgi.py 从中寻找app或者application变量。
使用其他模块名,则需要设置环境变量,因为我只使用app.py,所以不管其他。
P18
flask run --host=0.0.0.0 --port=8000
也可以写在环境变量里
FLASK_RUN_HOST
FLASK_RUN_PORT
2 环境变量管理 P16
安装python-dotenv。然后用.env文件管理环境变量
用.flaskenv管理敏感信息,不提交的git仓库。所以要把.flaskenv添加到.gitignore里
3 多种环境区分 P18
FLASK_ENV 默认 production 开发是可以设置为development。开启开发特性
默认是:
$ flask run
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
改成dev后是:
$ flask run
* Environment: development
* Debug mode: on
* Restarting with stat
* Debugger is active!
* Debugger PIN: 824-830-318
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
这才是原来熟悉的debug模式, 修改代码会自动reload
二、结构组织,blueprint
三、db以及初始化
原文地址:https://www.cnblogs.com/xuanmanstein/p/11732183.html