django使用裝飾器login required

2022-03-10 02:47:50 字數 1004 閱讀 5233

主要參考django官方文件:

場景:對於需要登入才能訪問的頁面,可使用裝飾器對檢視函式進行裝飾;當使用的是基於類的檢視時,可在url配置中進行設定

login_required引數:

使用須知:

1、如果使用者沒有登入,會重定向到settings.login_url,並傳遞絕對路徑到查詢字串中。例如:/accounts/login/?next=/polls/3/

此處可以:全域性配置登入後跳轉位址(login_ur

2、已經登入的使用者,繼續處理檢視邏輯

3、/accounts/login/?next=/polls/3/中的next引數可以通過redirect_field_name引數指定,檢視中獲取引數的時候注意引數名稱對應

補充:基於類的檢視也可以直接繼承loginrequiredmixin類實現:

from django.contrib.auth.mixins import loginrequiredmixin

class myview(loginrequiredmixin, view):

login_url = '/login/'

redirect_field_name = 'redirect_to'

django 裝飾器和分頁器

2.建立裝飾器 else url request.get full path ret redirect reverse users user login ret.set cookie url url return ret return login handler views.py 登入檢視函式中 實...

django 裝飾器和分頁器

2.建立裝飾器 else url request.get full path ret redirect reverse users user login ret.set cookie url url return ret return login handler views.py 登入檢視函式中 實...

python裝飾器 如何使用函式裝飾器

問題舉例 有時候我們想為多個函式統一新增某種功能,比如計時統計 記錄日誌,快取運算結果等 我們並不想在每個函式內一一新增完全相同的 有什麼解決方案嗎?定義裝飾器函式,用它在原函式的基礎上生成乙個新增新功能的函式來代替原函式 def memo func cache def wrap args res ...