
- Flask 教程
- Flask - 首頁
- Flask - 概述
- Flask - 環境
- Flask - 應用
- Flask - 路由
- Flask - 變數規則
- Flask - 構建 URL
- Flask - HTTP 方法
- Flask - 模板
- Flask - 靜態檔案
- Flask - 請求物件
- 將表單資料傳送到模板
- Flask - Cookie
- Flask - 會話
- Flask - 重定向和錯誤
- Flask - 訊息閃爍
- Flask - 檔案上傳
- Flask - 擴充套件
- Flask - 郵件
- Flask - WTF
- Flask - SQLite
- Flask - SQLAlchemy
- Flask - Sijax
- Flask - 部署
- Flask - FastCGI
- Flask 有用資源
- Flask - 快速指南
- Flask - 有用資源
- Flask - 討論
Flask – 構建 URL
url_for() 函式對於動態構建特定函式的 URL 非常有用。該函式將函式名稱作為第一個引數並作為一個或多個關鍵字引數,每個引數都對應於 URL 中的可變部分。
以下指令碼演示了 url_for() 函式的使用。
from flask import Flask, redirect, url_for app = Flask(__name__) @app.route('/admin') def hello_admin(): return 'Hello Admin' @app.route('/guest/<guest>') def hello_guest(guest): return 'Hello %s as Guest' % guest @app.route('/user/<name>') 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__': app.run(debug = True)
上面的指令碼有一個函式 user(name),該函式從 URL 接受其引數的一個值。
User() 函式檢查接收到的引數是否與 ‘admin’ 匹配。如果匹配,則使用 url_for() 將應用重定向到 hello_admin() 函式,否則使用 hello_guest() 函式,並將接收到的引數作為 guest 引數傳遞到其中。
儲存上述程式碼並從 Python shell 中執行。
開啟瀏覽器並輸入 URL 為 https://:5000/user/admin
瀏覽器中的應用響應為 -
Hello Admin
在瀏覽器中輸入以下 URL - https://:5000/user/mvl
應用響應現在變為 -
Hello mvl as Guest
廣告