W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
既然視圖類自己不是加入到路由系統(tǒng)的視圖函數(shù),那么裝飾視圖類并沒有多大意義。 相反的,你可以手動裝飾 as_view() 的返回值:
def user_required(f):
"""Checks whether user is logged in or raises error 401."""
def decorator(*args, **kwargs):
if not g.user:
abort(401)
return f(*args, **kwargs)
return decorator
view = user_required(UserAPI.as_view('users'))
app.add_url_rule('/users/', view_func=view)
從 Flask 0.8 開始,你也有一種在類聲明中設定一個裝飾器列表的方法:
class UserAPI(MethodView):
decorators = [user_required]
因為從調用者的視角來看 self 是不明確的,所以你不能在單獨的視圖方法上使用 常規(guī)的視圖裝飾器,請記住這些。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: