基础结构:
- 应用实例化
- 定义视图函数(修饰器、返回值)
- 运行
**视图函数:**修饰器决定了该函数的URL入口和在URL中可传递的参数。该函数的返回值就是访问URL的结果(HTML)。
1 2 3 4
| @route('path/<type:arg_name>', methods=['type1', ...]) def fun(): return HTTP_TEXT, Status_Code, Header
|
重定向:
redirect(URL)
:需要从flask
中引入redirect
模块。
url_for(fun_name, **args)
:生成视图函数fun_name
对应的URL
,并传入参数。
运行的两种方式:
1 2
| if __name__ == '__main__': app.run(debug = True)
|
1 2 3 4
| $env FLASK_APP=hello.py $env FLASK_DEBUG=1 flask run
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| from flask import Flask, redirect, url_for app = Flask(__name__)
@app.route('/') def hello_world(): return 'Hello World'
@app.route('/guest/<guest>') def hello_guest(guest): return 'Hello {} as Guest'.format(guest)
@app.route('/user/<name>') def hello_user(name): if name == 'admain': return redirect(url_for('hello_admin')) else: return redirect(url_for('hello_guest', guest = name)) if __name__ == '__main__': app.run(debug = True)
|