2015-05-04 18 views
-1

我有兩個類似的管理命令,有很多通用代碼。我想將通用代碼放在擴展NoArgsCommand的MyClass中,然後創建命令讓我們說擴展MyClass的CommandA和CommandB。我在CommandA和CommandB中有一個句柄方法,並試圖調用super.handle。我收到錯誤類型的對象 '超級' 有沒有屬性 '把手'Django管理命令通過使用超類提取公共功能

+1

後你的代碼請。和你的命令拋出錯誤。 – Othman

+0

你是在Python2還是Python3?你如何從CommandA和MyClass中調用你的超級用戶? – Yeo

回答

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)