Сразу два вопроса. Первый:
При переопределении метода родительского класса super() должен вызываться первой строкой или последней?
def save(self, *args, **kwargs):
# my code here
super().save(*args, **kwargs)
или:
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
# my code here
?
Второй вопрос:
При наследовании родительского класса и добавлении своей логики в один из его методов какой класс передавать в super()?
class Parent:
def __init__(self, *args, **kwargs):
pass
class Children(Parent):
def __init__(self, *args, **kwargs):
# some code
super(Parent, self).__init__(*args, **kwargs)
Или:
class Children(Parent):
def __init__(self, *args, **kwargs):
# some code
super(Children, self).__init__(*args, **kwargs)
?