flash基础(一)
------------恢复内容开始------------
@app.route('/')
def index():
return '<h1>Hello world !<h1>'
路由:URL和函数之间的映射关系
index()为视图函数
----------------------------------------------------------------------------------------
定义可变动态路由
@app.route('/usr/<name>')
def usr(name):
return '<h1>Hello,{}!<h1>'.format(name)
-------------------------------
动态路由限定参数类型
@app.route('/student/<类型:id>/')
def student(id):
print(type(id));
print(id);
如果是path类型:可以接受‘/’字符
如果是string类型:不可以接受'/'字符
如果是int类型,只能接受int类型
如果是float类型,只能接受float类型
如果是uuid类型,只能接受uuid类型
枚举any类型
@app.route('/any/<any(a,b,c):an>/')
def any(an):
print(an)
return 'Any'
------------------------------------------------------------------------
uuid值获取
@app.run('/getuuid/')
def get_uuid():
return str(uuid.uuid4())
-------------------------------------------------------------------------------
一个完整应用
from flask import Flask
app=Flask(_name_)
@app.route('/')
def index():
return '<h1>Hello world!</h1>'
-----------------------------------------------------------------------------------------------
app.run的参数:
app.run(debug=True, port=8080, host='127.0.0.1')
------------------------------------------------------------------------------------------------
请求方法
@app.route('/rule/',methods=['GET','POST'])
def hello():
return 'LOL'
method中指定的方法
GET
POST
HEAD
PUT
DELETE
------------------------------------------------------------------------------
反向解析 url_for
url_for
: url_for的一个参数是一个视图函数的名字的字符串格式,后面的参数的参数以关键字的形式传递给url
。 如果传递的参数在那个视图中url中定义了,那么这个参数就会以路径参数的形式给url
。 如果传递的参数没有在url
中定义,那么这些参数将会以查询字符串的形式放到url
中。
from flask import Flask, url_for
app = Flask(__name__)
@app.route('/')
def index():
my_list_path = url_for('my_list', page=1, count=111)
print(my_list_path) # 结果为: /list/1/?count=111
return my_list_path
@app.route('/list/<int:page>/')
def my_list(page):
return '第 {} 页'.format(page)