В общем хочу разобраться как работает джанга когда вызывает CBV, к каким классам обращается, что запрашивает и хочу вывести список "класс -> метод/атрибут"
пробую делать так
def __getattribute__(self, *args, **kwargs):
(string,) = args
if ('__class__' != string):
print(self.__class__.__name__, ' ', *args)
return super().__getattribute__(*args, **kwargs)
Он выводит только имя родителя, как можно посмотреть какому классу какой метод принадлежит?
UPD2: Кому интересно вот решение
def __getattribute__(self, *args, **kwargs):
(string,) = args
if '__class__' != string:
from inspect import isfunction
if hasattr(self.__class__, string):
if isfunction(getattr(self.__class__, string)):
print(getattr(self.__class__, string).__qualname__, ' ', *args, **kwargs)
return super().__getattribute__(*args, **kwargs)