我想了解python中的this piece of code。根据我的理解,当您不想显式编写基类的名称时,super
用于从派生类调用基类函数。但是如下所述,如果基类本身使用super
来调用某个函数,这意味着什么?什么时候应该在python的Base类中使用关键字super?
class ReviewViewMixin(object):
def dispatch(self, request, *args, **kwargs):
# some code
return super(ReviewViewMixin, self).dispatch(request, *args, **kwargs)
class ReviewCreateView(ReviewViewMixin, CreateView):
# some code
def dispatch(self, request, *args, **kwargs):
super(ReviewCreateView, self).dispatch(request, *args, **kwargs)
我试着创建类似上面的几个样本类,但我得到了预期的“没有这样的参数”异常。
这是绝对简单和灿烂的解释检查维修。非常感谢。我花了太多时间来弄清楚发生了什么事。 – Sathish