Чтобы помочь в сериализации в JSON, я обычно создаю класс, который наследуется от класса python dict. Если предполагается, что у класса есть определенные поля, я хочу, чтобы там были методы для получения и установки.
В настоящее время я создаю класс как:
class MyRequest(dict):
def __init__(self, firstName=None, lastName=None):
self['firstName'] = firstName
self['lastName'] = lastName
def get_firstName(self):
return self['firstName']
def set_firstName(self, firstName):
self['firstName'] = firstName
def get_lastName(self):
return self['lastName']
def set_lastName(self, lastName):
self['lastName'] = lastName
Но с этим действительно сложно работать. Поскольку базовое «хранилище» - это словарь, я не могу просто получить доступ к таким полям, как
myReq.firstName = "Foo"
print myReq.lastName
Но есть ли способ попасть туда, сохраняя при этом поддержку диктата?