I have a below JSON format which belongs to a shop which inside this json object, Data
field is a JSON array consists of a hierarchy of product categories which categories are stored in a nested hierarchical format (Each category have children and each child may have its own children, etc.).
{"Data":[
{"ID":1,"ParentCategoryId":0,"Name": "Parent1","Children":
[
{"ID":2,"ParentCategoryId":1,"Name": "P1Child1","Children":[]},
{"ID":3,"ParentCategoryId":1,"Name": "P1Child2","Children":[]},
{"ID":4,"ParentCategoryId":1,"Name": "P1Child3","Children":[]},
{"ID":5,"ParentCategoryId":1,"Name": "P1Child4","Children":[]},
]
},
{"ID":6,"ParentCategoryId":0,"Name": "Parent2","Children":
[
{"ID":7,"ParentCategoryId":6,"Name": "P2Child1","Children":[]},
{"ID":8,"ParentCategoryId":6,"Name": "P2Child2","Children":[]},
{"ID":9,"ParentCategoryId":6,"Name": "P2Child3","Children":[]}
]
}
]
}
Reading this format using Swifty JSON usign json["Data"].array
returns a flat list of categories which have no hierarchy.
I want to know how can I read this hierarchical JSON object while preserving its structure.
Here is current structure of my Model Object (which is not included Children filed but must be modified to be so):
open class ProductCategory: NSObject {
var idd : NSInteger
var name : String
var parentCategoryId : NSInteger
...
}