使用 super() 和 super(ViewName,self) 的区别
difference between using super() and super(ViewName,self)
我一直在通用视图 (CBV) 中使用
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
但我注意到这里的人这样做:
context = super(ClassViewName,self).get_context_data(**kwargs)
有区别吗?
不同之处在于 python 版本支持的语法。
在 python 3 中,您将使用
context = super().get_context_data(**kwargs)
而在 python 2 中,您将使用
context = super(ClassViewName,self).get_context_data(**kwargs)
任何 super
方法调用都是如此
参见:http://www.pythonforbeginners.com/super/working-python-super-function
我一直在通用视图 (CBV) 中使用
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
但我注意到这里的人这样做:
context = super(ClassViewName,self).get_context_data(**kwargs)
有区别吗?
不同之处在于 python 版本支持的语法。 在 python 3 中,您将使用
context = super().get_context_data(**kwargs)
而在 python 2 中,您将使用
context = super(ClassViewName,self).get_context_data(**kwargs)
任何 super
方法调用都是如此
参见:http://www.pythonforbeginners.com/super/working-python-super-function