Flask中那些特殊的裝飾器

2022-07-17 09:24:11 字數 1193 閱讀 6654

用法:

記得加括號

def jiafa(a, b): #

這個方法每呼叫一次就需要傳一次, 將他做成乙個全域性的就用這麼麻煩了

return int(a) + int(b)

在模板中這樣使用

可以在全域性範圍的模板中使用這個函式, 而不用通過引數傳到模板中 

用法:def

jianfa(a, b, c):

return a - b - c

在模板中這樣使用

用法:def

confirm():

"""在執行檢視函式之前執行

:return:

"""if session.get('

auth

') or request.path == "

/login

"or request.path.startswith('

/static'):

return

none

else

: next_url =request.path

return redirect('

/login?next=%s

' % (next_url,))

用法:def

access_login(response):

"""檢視函式執行完畢並執行成功後執行

:param response: 必須接受乙個response

:return:

"""ip =request.remote_addr

url =request.path

print("

%s訪問 %s 成功

" %(ip, url))

return response #

必須返回乙個response物件

404: 監聽的錯誤碼

deferror(args):

"""當出現某個錯誤狀態碼時會呼叫這個函式

:param args: 錯誤資訊

:return:

"""return render_template("

error.html

")多個被裝飾器裝飾的函式的執行順序是什麼呢?

Flask 特殊裝飾器

檢視中的裝飾器 否則這個裝飾器起不到任何作用 2 類檢視的裝飾器,需要重寫類檢視中的乙個類屬性 decorators 這個類屬性 是乙個列表或元組都可以,裡面裝的就是左右裝飾器 在請求 request 進入檢視函式之前執行,是全域性的裝飾器,每次請求都會走一遍這個裝飾器,這和django的中介軟體很...

flask的路由配置,特殊裝飾器

1,flask中的路由 2,flask中的例項化配置 class debug object 4,blueprint 5,特殊裝飾器 def af1 response 正常 be1 be2 be3 af3 af2 af1 異常 be1 af3 af2 af1 def error404 args 基於藍...

Flask 之裝飾器有關

報錯的大概意思就是存在相同的view,在flask中,如果定義了兩個相同函式名的view,就會報這種報這種錯誤,例如 但是上例中的兩個函式名分別是index和course,是不相同的,為什麼會報這種錯?我經過查詢發現,這是因為python裝飾器本質上就是函式的鏈式呼叫 解決方法 在裝飾externa...