裝飾器的應用

2022-07-04 19:39:11 字數 1540 閱讀 5192

from flask import

flask,render_template,request,redirect,session

)sdsfdsgdfgdfgfh"#

設定session時,必須要加鹽,否則報錯

def

def inner(*args,**kwargs):

ifnot session.get("

user_info"):

return redirect("

/login")

ret = func(*args,**kwargs)

return

ret

return

inner

"/login

",methods=["

get","

post

"]) #

指定該路由可接收的請求方式,預設為get

deflogin():

if request.method=="

get"

:

return render_template("

login.html")

else

:

#print(request.values) #這個裡面什麼都有,相當於body

username = request.form.get("

username")

password = request.form.get("

password")

if username=="

haiyan

"and password=="

123"

: session[

"user_info

"] =username

#session.pop("user_info") #刪除session

return redirect("

/index")

else

:

#return render_template("login.html",**)

return render_template("

login.html

",msg="

使用者名稱或者密碼錯誤")

"/index

",methods=["

get","

post"])

#自己定義裝飾器時,必須放在路由的裝飾器下面

defindex():

#if not session.get("user_info"):

#return redirect("/login")

return render_template("

index.html")

if__name__ == '

__main__':

debug = true 是指進入除錯模式,伺服器會在 我們的**修改後, 自動重新載入,有錯誤的話會提醒,每次修改**後就不需要再手動重啟

函式應用 裝飾器

裝飾器 修飾乙個 原來定義的乙個函式,但是這個函式的功能不夠完美,需要提公升此函式 不改變原函式的內容,名稱。此時就可以考慮使用 裝飾器 完善購票功能 登入驗證 islogin false 定義裝飾器 def login required func global islogin if islogin...

python 裝飾器應用

裝飾器應用 裝飾器的主要作用是 列印日誌,檢測效能,資料庫事物,url路由 應用1,生成標籤 def bold fn def 閉包,這個函式的作用就是給原來的函式增加一些功能,return fn bold deftest return python in 2 test out 2 python 等價...

裝飾器應用demo

log 為乙個方法新增 log 函式,檢查輸入的引數 class math function log target,name,descriptor with args return oldvalue.this args return descriptor const math newmath cal...