def structure_from_dict(data, root): elements = list() vals = data.get(root.value, None) if not vals: # no children, break return list() for c in vals.split(', '): el = Element(c) nodes = structure_from_dict(data, el) if nodes: el.set_children(nodes) elements.append(el) return elements
def _build_project(self, data): if not 'Project' in data.keys(): return None else: from models import Element def structure_from_dict(data, root): elements = list() vals = data.get(root.value, None) if not vals: # no children, break return list() for c in vals.split(', '): el = Element(c) nodes = structure_from_dict(data, el) if nodes: el.set_children(nodes) elements.append(el) return elements root = Element(data['Project']) root.set_children(structure_from_dict(data, root)) return root