2016-12-08 55 views
0

我有我需要裏面的所有我的意見的,是以視圖作爲參數調用一個函數:如何在函數內引用視圖?

def view_1(request): 

    def foo(): 
     return Model.objects.create(user = request.user, view = 'view_1') 

    return render(request, myAPP/view_1.html) 


def view_2(request): 

    def foo(): 
     return Model.objects.create(user = request.user, view = 'view_2') 

    return render(request, myAPP/view_2.html) 

    . 
    . 
    . 

def view_N(request): 

    def foo(): 
     return Model.objects.create(user = request.user, view = 'view_N') 

    return render(request, myAPP/view_N.html) 

有沒有一種方法可以動態生成視圖變量,這樣我可以一次寫的功能和在每個視圖中調用它?

def view_1(request) 
    foo() 
    return render(request, myAPP/view_1.html) 

def view_2(request) 
    foo() 
    return render(request, myAPP/view_2.html) 
    . 
    . 
    . 
def view_N(request) 
    foo() 
    return render(request, myAPP/view_N.html) 
+0

您是否檢查基於類的視圖? – aisbaa

回答

0

爲什麼不把這個函數本身作爲參數foo傳遞?

def foo(view_obj): 
     return Model.objects.create(user = request.user, view = view_obj.__name__) 

def view_1(request) 
    foo(view_1) 
    return render(request, myAPP/view_1.html) 
相關問題