flask初识
-
安装Flask
pip install flask
-
目录结构
flask-demo/ ├ run.py # 应用启动程序 ├ config.py # 环境配置 ├ requirements.txt # 列出应用程序依赖的所有Python包 ├ tests/ # 测试代码包 │ ├ __init__.py │ └ test_*.py # 测试用例 └ myapp/ ├ admin/ # 蓝图目录 ├ static/ │ ├ css/ # css文件目录 │ ├ img/ # 图片文件目录 │ └ js/ # js文件目录 ├ templates/ # 模板文件目录 ├ __init__.py ├ forms.py # 存放所有表单,如果多,将其变为一个包 ├ models.py # 存放所有数据模型,如果多,将其变为一个包 └ views.py # 存放所有视图函数,如果多,将其变为一个包
-
开始 Hello world
from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'Hello World' if __name__ == '__main__': app.debug = True # 设置调试模式,生产模式的时候要关掉debug app.run()
-
flask路由
@app.route('/login',methods=['GET','POST']) def login(): pass
-
路由的参数
@app.route('/login',methods=['GET','POST'],endpoint="login") def login(): pass # 注意:endpoint不能重名
-
动态路由
@app.route('/index') def login(): pass @app.route('/index/<name>') def login(name): pass @app.route('/index/<int:nid>') def login(nid): pass
-
获取提交的数据
from flask import request @app.route('/index') def login(): request.args # GET形式传递的参数 request.form # POST形式提交的参数
-
返回数据
@app.route('/index') def login(): return render_template('模板文件') return jsonify("hello world") reutrn redirect('/index/') reutrn redirect(url_for('idx')) return "...."
-
模板处理
{{ x }} {% for item in list %} {{item}} {% endfor %}