1. 程式人生 > >Django高級

Django高級

初始化 方法 lse urn django session func wrapper required

一 登錄裝飾器

def login_required(view_func):
    ‘‘‘登錄判斷裝飾器‘‘‘

    def wrapper(request, *view_args, **view_kwargs):
        # 判斷用戶是否登錄
        if request.session.has_key(islogin):
            # 用戶以登錄,調用對應的視圖函數
            return view_func(request, *view_args, **view_kwargs)
        else:
            
# 用戶未登錄,跳轉到登錄頁 return redirect(/login) return wrapper

二 中間件

  Django中的中間件是一個輕量級、底層的插件系統,可以介入Django的請求和響應處理

過程,修改Django的輸入或輸出。中間件的設計為開發者提供了一種無侵入式的開發方式,

增強了Django框架的健壯性,其它的MVC框架也有這個功能,名稱為IoC。

  Django在中間件中預置了五個方法,這五個方法的區別在於不同的階段執行,對輸入或

輸出進行幹預,方法如下:

1)初始化:無需任何參數,服務器響應第一個請求的時候調用一次,用於確定是否啟用當前中間件。

Django高級