浏览代码

bug fix, putting orphaned attributes in references at top level upon export

Steve Nyemba 3 年之前
父节点
当前提交
bab0040f0c
共有 1 个文件被更改,包括 10 次插入8 次删除
  1. 10 8
      healthcareio/export/export.py

+ 10 - 8
healthcareio/export/export.py

@@ -84,11 +84,10 @@ def meta(config) :
                 config[key]['map'][field] = -100
     add_index  = {} #-- tells if we should add _index attribute or not
     for prefix in config :
-        # if 'map' in config[prefix] :
-            # label = list(set(['label','field']) & set(config[prefix].keys()))
-            # label = None if not label else config[prefix][label[0]]
-            # _map = config[prefix]['map']
-            # _info +=  (field_info(_map,label))
+       #
+       # Running through every element that we can parse (from the configuration)
+       # This allows us to create ER-Like structures from the data we have
+       #
         
         if type(config[prefix]) != dict :
             continue
@@ -98,9 +97,12 @@ def meta(config) :
                 
                 _entry = config[prefix]['@ref'][subprefix]
                 _id = list(set(['label','field']) & set(config[prefix]['@ref'][subprefix].keys()))
-                _id = _id[0]
-                table = config[prefix]['@ref'][subprefix][_id]
-                add_index[table] = 1 if _id == 'label' else 0
+                if _id :
+                    #
+                    # In case a reference item has a parent field/label
+                    _id = _id[0]
+                    table = config[prefix]['@ref'][subprefix][_id]
+                    add_index[table] = 1 if _id == 'label' else 0
                 if 'map' in _entry :
                     
                     _info += get_field(_entry)