url_for() 函式是動態構建乙個**給特定的功能是非常有用的。該函式接受函式的名稱作為第乙個引數,並接受乙個或多個關鍵字引數,每個引數對應於url的變數部分。
以下指令碼演示了使用 url_for() 函式。
from flask import flask, redirect, url_for上面的指令碼有乙個函式 使用者(名稱) ,它接受來自url的引數值。def hello_admin():
return 'hello admin'
def hello_guest(guest):
return 'hello %s as guest' % guest
def hello_user(name):
if name =='admin':
return redirect(url_for('hello_admin'))
else:
return redirect(url_for('hello_guest',guest = name))
if __name__ == '__main__':
hello_user() 函式檢查引數接收匹配 「admin」 與否。如果匹配,則使用 url_for() 將應用程式重定向到hello_admin() 函式,否則將該接收的引數作為guest引數傳遞給 hello_guest() 函式。
儲存上面的**並從python shell執行。
開啟瀏覽器並輸入url - http:// localhost:5000 / user / admin
瀏覽器中的應用程式響應是 -
hello admin在瀏覽器中輸入以下url - http:// localhost:5000 / user / mvl
應用程式響應現在變為 -
hello mvl as guest其它:
url_for('hello_guest
',guest = name)
看一下函式的定義:url_for函式有
2個引數,
hello_guest代表檢視函式的名字,另乙個則是
**values關鍵字引數,它的值應該是
key = value形式,如果直接傳值就會報下面這樣的錯。
python會把name當作乙個位置引數,而不是關鍵字引數
如果檢視函式的名字也寫錯呢?
報錯如下:
werkzeug.routing.builderror文章出處:flask模板渲染,重定向
檢視,具體請看注釋 學過django後再學這個感覺要飛起來了 渲染模板引擎 重定向 請求物件 反向解析重定向 from flask import flask,render template,redirect,request,url for import settings 匯入配置 載入配置 檢視函式...
Flask 重定向 模板語法,
例1 訪問 的時候,你選擇了已經購買的商品,但是你並沒有登入過 那麼這個時候如果只是提示 請登入再訪問!那麼相信這種設計是留不住使用者的,不如直接為使用者重定向到登入頁面。例2 比如想廢棄原本的 那麼使用者並不知道這個事情,所以使用者還是會訪問原來的 那麼就會內部做乙個重定向到新啟用的 重定向的過程...
Fiddler設定重定向url
來自 request 域 regex insx http func redirect 域 redir http functest.首先 regex insx 語法為 fiddler中正則匹配的語法,這個寫法是為了匹配func.後面的所有字元以方便redirect域中引用,這種寫法的括號中的結構形式為...