object looks like as below
{
"id":1,
"image":"path/to/image",
"employee_data":<sql_alcahmy_object>,
}
again sql_alcahmy_object is as below
{
"employee_previous":<sql_alchemy_object2>,
"employee_salary":"1$",
}
again sql_alcahmy_object2 is as below
{"company":"xyz","years":10}
below method will be used to extract all data from sql alchemy object
sql_alchemy_object.__dict__
below is the recursive method planned but it didn't work out
def extract_recursive(deepvalue,alldata={}):
for eachkey,eachvalue in deepvalue.__dict__.iteritems():
if hasattr(eachvalue,"__dict__"):
alldata.update({eachkey:extract_recursive(eachvalue)})
else:
alldata.update({eachkey:eachvalue})
print(alldata)
expected output
{
"id":1,
"image":"path/to/image",
"employee_data":{
"employee_previous":{"company":"xyz","years":10},
"employee_salary":"1$",
}
}
Available methods in deepvalue and sql_alcahmy_object as below
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__mapper__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__table__', '__tablename__', '__weakref__', '_decl_class_registry', '_sa_class_manager', 'age']