加工中心解鎖面板 Flask提供了兩種方式配置路由,第一種方式是使用裝飾器@app.route(uri, methods)的方式,其中uri是指具體的路徑,methods是一個(gè)列表,值得是可以處理的請(qǐng)求類型如GET、POST等。
第二種方式是通過(guò)Flask實(shí)例調(diào)用add_url_rule函數(shù)配置
app.add_url_rule(uri, uri_alias, view)
復(fù)制代碼
該函數(shù)的參數(shù)中uri是指具體的uri地址,uri_alias是指uri的別名,view是指對(duì)應(yīng)的視圖函數(shù)的名字
使用第二種方式配置路由
# 其余代碼不變
@app.route('/')
def index():
info = {
'message': "這是存在message變量中的信息"
}
return render_template('index.html', info=info)
# 使用第二種方式給index()視圖函數(shù)配置路由
app.add_url_rule('/index', 'index', index)
復(fù)制代碼
"/"和"/index"都可以映射到index()視圖函數(shù)上
路徑參數(shù)設(shè)置和獲取
URL路徑中可以進(jìn)行參數(shù)的傳遞,F(xiàn)lask中URL參數(shù)的類型
- string:接收任何不包含斜杠的問(wèn)題本
- int:接收正整數(shù)
- float:接收浮點(diǎn)數(shù)
- path:類似string,但可以包含斜杠
- uuid:接收uuid字符串
在app.py中定義一個(gè)視圖函數(shù)
@app.route('/page/')
def list(page_number):
return '這是第{}頁(yè)用戶'.format(page_number)
復(fù)制代碼
重啟應(yīng)用,訪問(wèn) http://127.0.0.1:5000/page/100
定義路徑中的參數(shù)時(shí)要定義參數(shù)的名字以及類型,書(shū)寫(xiě)視圖函數(shù)時(shí)要將參數(shù)的名字作為視圖函數(shù)的參數(shù),這可以就可以通過(guò)參數(shù)名直接獲取到URL傳遞的參數(shù)的值
如果參數(shù)是非必填的可以設(shè)置參數(shù)的默認(rèn)值
@app.route('/page/')
@app.route('/page/')
def list(page_number=1):
return '這是第{}頁(yè)用戶'.format(page_number)
復(fù)制代碼
重啟應(yīng)用,訪問(wèn) http://127.0.0.1:5000/page/
url_map 屬性
Flask實(shí)例的url_map屬性包含了所有的視圖函數(shù)以及對(duì)應(yīng)的URL地址
Flask 請(qǐng)求
上下文對(duì)象context,類似容器,存儲(chǔ)了一些關(guān)鍵信息
- 應(yīng)用上下文
- 請(qǐng)求上下文
- 在分派請(qǐng)求之前激活應(yīng)用上下文和請(qǐng)求上下文
- 請(qǐng)求處理完之后將其刪除
-
路由
+關(guān)注
關(guān)注
0文章
277瀏覽量
41778 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4306瀏覽量
62431 -
flask
+關(guān)注
關(guān)注
0文章
16瀏覽量
3611
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論