Browse Source

Delete relationnal Field from the generated LeType child class

Yann Weber 9 years ago
parent
commit
f886bb5193
3 changed files with 8 additions and 5 deletions
  1. 4
    1
      EditorialModel/classes.py
  2. 2
    2
      EditorialModel/types.py
  3. 2
    2
      leobject/test/test_lefactory.py

+ 4
- 1
EditorialModel/classes.py View File

@@ -74,7 +74,10 @@ class EmClass(EmComponent):
74 74
     ## Retrieve list of fields
75 75
     # @return fields [EmField]:
76 76
     def fields(self, relational = True):
77
-        return [ f for f in self.model.components('EmField') if f.class_id == self.uid ]
77
+        if relational:
78
+            return [ f for f in self.model.components('EmField') if f.class_id == self.uid]
79
+        else:
80
+            return [ f for f in self.model.components('EmField') if f.class_id == self.uid and f.fieldtype != 'rel2type' and f.rel_field_id is None]
78 81
 
79 82
     ## Retrieve list of type of this class
80 83
     # @return types [EditorialModel.types.EmType]:

+ 2
- 2
EditorialModel/types.py View File

@@ -95,8 +95,8 @@ class EmType(EmComponent):
95 95
 
96 96
     ## Return the list of associated fields
97 97
     # @return A list of EmField instance
98
-    def fields(self, relational = False):
99
-        return [ field for field in self.em_class.fields() if not field.optional or (field.optional and field.uid in self.fields_list) ]
98
+    def fields(self, relational = True):
99
+        return [ field for field in self.em_class.fields(relational) if not field.optional or (field.optional and field.uid in self.fields_list) ]
100 100
 
101 101
     ## Select_field (Function)
102 102
     #

+ 2
- 2
leobject/test/test_lefactory.py View File

@@ -100,8 +100,8 @@ class TestLeFactory(TestCase):
100 100
 
101 101
             #Testing _fields
102 102
             self.assertEqual(
103
-                set([ f.name for f in emtype.fields() ]),
104
-                set(letype._fields)
103
+                set([ f.name for f in emtype.fields(False) ]),
104
+                set([ f for f in letype._fields])
105 105
             )
106 106
 
107 107
             #Testing superiors

Loading…
Cancel
Save