Django管理命令通过使用超类来提取常用功能

时间:2015-05-04 15:53:38

标签: python django

我有两个类似的管理命令,有很多常用代码。我想将公共代码放在扩展NoArgsCommand的MyClass中然后创建命令让我们说CommandA和CommandB扩展MyClass。我在CommandA和CommandB中有一个句柄方法,并尝试调用super.handle。我收到错误类型对象'超'没有属性'句柄'

1 个答案:

答案 0 :(得分:1)

有效的python syntax for calling super是:

def handle(self, *args, **options):
    super(CommandA, self).handle(*args, **options)

如果你使用python 3,那么你可以省略super()个参数:

def handle(self, *args, **options):
    super().handle(*args, **options)