[CORD-1338] Adding onetomany relations to modeldefs

Change-Id: I213ebf807984adcc69edee91252ccd53f6ab1c25
diff --git a/lib/xos-genx/xosgenx/jinja2_extensions/base.py b/lib/xos-genx/xosgenx/jinja2_extensions/base.py
index 3cb9886..40afa48 100644
--- a/lib/xos-genx/xosgenx/jinja2_extensions/base.py
+++ b/lib/xos-genx/xosgenx/jinja2_extensions/base.py
@@ -49,22 +49,6 @@
 
     return plural
 
-def xproto_links_to_modeldef_relations(llst):
-    outlist = []
-    seen = []
-    for l in llst:
-        try:
-            t = l['link_type']
-        except KeyError, e:
-            raise e
-
-        if l['peer']['fqn'] not in seen and t!='manytomany':
-            outlist.append('- {model: %s, type: %s}\n'%(l['peer']['name'], l['link_type']))
-        seen.append(l['peer'])
-    
-    return outlist
-
-
 def xproto_base_def(model_name, base, suffix='', suffix_list=[]):
     if (model_name=='XOSBase'):
         return '(models.Model, PlModelMixIn)'
diff --git a/lib/xos-genx/xosgenx/jinja2_extensions/gui.py b/lib/xos-genx/xosgenx/jinja2_extensions/gui.py
index bd23fdb..25342d2 100644
--- a/lib/xos-genx/xosgenx/jinja2_extensions/gui.py
+++ b/lib/xos-genx/xosgenx/jinja2_extensions/gui.py
@@ -87,4 +87,25 @@
         val = 'null'
     else:
         val = str(default)
-    return val
\ No newline at end of file
+    return val
+
+
+def xproto_links_to_modeldef_relations(llst):
+    outlist = []
+    seen = []
+    for l in llst:
+        try:
+            t = l['link_type']
+        except KeyError, e:
+            raise e
+
+        if l['peer']['fqn'] not in seen and t != 'manytomany':
+            on_field = 'null'
+            if l['link_type'] == 'manytoone':
+                on_field = l['src_port']
+            elif l['link_type'] == 'onetomany':
+                on_field = l['dst_port']
+            outlist.append('- {model: %s, type: %s, on_field: %s}\n' % (l['peer']['name'], l['link_type'], on_field))
+        seen.append(l['peer'])
+
+    return outlist
\ No newline at end of file