Наследование в Python с общим объектом - как вызвать метод, только если он существует в этом объекте
Итак, у меня есть такой кусок кода:
class QuerySetUpdateOverriden(QuerySet, object):
def update(self, *args, **kwargs):
super().update(*args, **kwargs)
if hasattr(self, method):
self.method()
return
Я хочу переопределить метод update и, если второй класс, который он наследует, имеет определенный метод, вызвать его тоже.
Но я получаю ошибку на строке, содержащей оператор if, говорящую "метод name не определен".
Почему это происходит и как я могу это исправить?
Спасибо.
вы должны передать строку с именем, так:
if hasattr(self, 'method'):
self.method()
return