Flask URL構(gòu)建

2023-03-24 09:32 更新

url_for()函數(shù)對于動態(tài)構(gòu)建特定函數(shù)的URL非常有用。

url_for()函數(shù)接受函數(shù)的名稱作為第一個參數(shù),以及一個或多個關(guān)鍵字參數(shù),每個參數(shù)對應(yīng)于URL的變量部分。

以下腳本演示了如何使用url_for()函數(shù):

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)

上述腳本有一個函數(shù)hello_user(name),它接受來自URL的參數(shù)的值。

hello_user()函數(shù)檢查接收的參數(shù)是否與'admin'匹配。

如果匹配,則使用url_for()將應(yīng)用程序重定向到hello_admin()函數(shù),否則重定向到將接收的參數(shù)作為guest參數(shù)傳遞給它的hello_guest()函數(shù)。

保存上面的代碼并從Python shell運行。

打開瀏覽器并輸入URL - http://localhost:5000/user/admin

瀏覽器中的應(yīng)用程序響應(yīng)是:

Hello Admin

在瀏覽器中輸入以下URL - http://localhost:5000/user/mvl

應(yīng)用程序響應(yīng)現(xiàn)在更改為:

Hello mvl as Guest


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號