Python 如何在请求结束时在generic.view中调用自定义方法

Python 如何在请求结束时在generic.view中调用自定义方法,python,django,Python,Django,我在Django中有一个通用视图,其中添加了一个自定义Mixin。我需要在查看请求周期结束时或接近结束时调用新的mixin方法has_action from django.views.generic import View class AboutView(MyCustomMix, View): #edited for brevity 定制混音器 def has_action(self, request, view): # do some stuff 我在这

我在Django中有一个通用视图,其中添加了一个自定义Mixin。我需要在查看请求周期结束时或接近结束时调用新的mixin方法
has_action

from django.views.generic import View

    class AboutView(MyCustomMix, View):
        #edited for brevity
定制混音器

def has_action(self, request, view):
     # do some stuff
我在这里有哪些选项可以确保调用了
has\u action
?我能想到的唯一方法是将
has_action
方法重命名为类似
def as_view
的其他方法,并使用super,因为我知道它会被调用


但是有没有办法在我的视图中请求周期结束时调用
has_action
(我仍然需要访问request,view)。我已经看到,可以通过覆盖视图上的
init
来实现这一点,但这会在请求周期开始时运行。

我认为您可以覆盖该方法:


不确定
视图
参数有什么动作

由于视图
不是请求/响应周期的一部分,因此在定义URL时会调用它,因此此处不适用。
def dispatch(self, request, *args, **kwargs):
   response = super(AboutView, self).dispatch(request, *args, **kwargs)
   self.has_action(request, self)
   return response