我需要在我的所有视图中调用一个函数,该视图将视图作为参数:
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 :(得分: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)