Я использую jsonpickle для хранения объектов некоторого класса A
в MongoDb, и все было хорошо, я мог писать и читать объекты, пока не добавил новые свойства в этот класс. Теперь, после прочтения объекта из базы данных и удаления его с помощью Unpickler().restore(doc)
, новые созданные свойства отсутствуют для этого объекта, и я получаю AttributeError, если попытаюсь получить к ним доступ.
Изначально класс был таким:
class WelcomeUserState:
def __init__(self, did_welcome: bool = False):
self.did_welcome_user = did_welcome
и все было хорошо. Но затем я отредактировал код класса, добавив атрибут:
class WelcomeUserState:
def __init__(self, did_welcome: bool = False, some_attribute=8):
self.did_welcome_user = did_welcome
self.some_attribute = some_attribute
Теперь выполняю этот код
doc = get_from_db()
result_obj = Unpickler().restore(doc)
result_object
не имеет атрибута some_attribute
, но я хочу должно быть равно значению по умолчанию (8).