Отслеживание изменения атрибутов класса
Есть задача отслеживать изменения атрибутов класса, что бы обновлять БД. Мне интересно, возможно ли такое реализовать? На данный момент есть такой код:
def __setattr__(self, key, value):
if self.db_connection and not key.startswith('_'):
self.write_to_table_attr(key, value)
self.__dict__[key] = value
Но проблема в том, что если у меня один из атрибутов - класс, то при изменении его атрибута не будет использоваться setattr родителя, а значит обновление не запишется в БД.