Browse Source

Bugfixes due to properties name changes in LeRelation

Yann Weber 9 years ago
parent
commit
222f10282d

+ 2
- 2
EditorialModel/fieldtypes/leo.py View File

@@ -56,8 +56,8 @@ class EmFieldType(GenericFieldType):
56 56
     def check_sup_consistency(self, lec, fname, datas):
57 57
         if lec.implements_lerel2type():
58 58
             # Checking consistency for a rel2type relation
59
-            lesup = datas[lec._lesup_name]
60
-            lesub = datas[lec._lesub_name]
59
+            lesup = datas[lec._superior_field_name]
60
+            lesub = datas[lec._subordinate_field_name]
61 61
             if lesub.__class__ not in lesup._linked_types:
62 62
                 return FieldTypeError("Rel2type not authorized between %s and %s"%(lesup, lesub))
63 63
         pass

+ 2
- 2
EditorialModel/fieldtypes/naturerelation.py View File

@@ -26,8 +26,8 @@ class EmFieldType(EmFieldType):
26 26
         #if not isinstance(lec, lerelation._LeRelation):
27 27
         #    return ValueError("A field naturerelation has to be in a LeRelation object, but this one is in a '%s'"%lec.__name__)
28 28
         nature = datas[fname]
29
-        lesup = datas[lec._lesup_name]
30
-        lesub = datas[lec._lesub_name]
29
+        lesup = datas[lec._superior_field_name]
30
+        lesub = datas[lec._subordinate_field_name]
31 31
         if nature is None:
32 32
             #if not isinstance(lec, lerelation.LeRel2Type):
33 33
             #Replace with a test from _LeCrud

+ 1
- 1
leapi/lecrud.py View File

@@ -173,7 +173,7 @@ class _LeCrud(object):
173 173
     # @param cls Class: a Class or instanciated object
174 174
     @classmethod
175 175
     def implements_lerelation(cls):
176
-        return hasattr(cls, '_lesup_name')
176
+        return hasattr(cls, '_superior_field_name')
177 177
     
178 178
     ## @return maybe Bool: True if cls implements LeRel2Type
179 179
     # @param cls Class: a Class or instanciated object

+ 2
- 2
leapi/lefactory.py View File

@@ -244,8 +244,8 @@ class LeObject(LeCrud, leapi.leobject._LeObject):
244 244
 class LeRelation(LeCrud, leapi.lerelation._LeRelation):
245 245
     _uid_fieldtype = {lerel_uid_fieldtype}
246 246
     _rel_fieldtypes = {lerel_fieldtypes}
247
-    _superior_fieldname = {lesup_name}
248
-    _subordinate_fieldname = {lesub_name}
247
+    _superior_field_name = {lesup_name}
248
+    _subordinate_field_name = {lesub_name}
249 249
 
250 250
 class LeHierarch(LeRelation, leapi.lerelation._LeHierarch):
251 251
     pass

+ 6
- 6
leapi/lerelation.py View File

@@ -11,8 +11,8 @@ from . import lefactory
11 11
 ## @brief Main class for relations
12 12
 class _LeRelation(lecrud._LeCrud):
13 13
 
14
-    _lesup_name = None
15
-    _lesub_name = None
14
+    _superior_field_name = None
15
+    _subordinate_field_name = None
16 16
     ## @brief Stores the list of fieldtypes that are common to all relations
17 17
     _rel_fieldtypes = dict()
18 18
 
@@ -23,13 +23,13 @@ class _LeRelation(lecrud._LeCrud):
23 23
     @classmethod
24 24
     def sup_filter(self, leo):
25 25
         if isinstance(leo, leobject._LeObject):
26
-            return (self._lesup_name, '=', leo)
26
+            return (self._superior_field_name, '=', leo)
27 27
 
28 28
     ## @brief Forge a filter to match the superior
29 29
     @classmethod
30 30
     def sub_filter(self, leo):
31 31
         if isinstance(leo, leobject._LeObject):
32
-            return (self._lesub_name, '=', leo)
32
+            return (self._subordinate_field_name, '=', leo)
33 33
 
34 34
     ## @return a dict with field name as key and fieldtype instance as value
35 35
     @classmethod
@@ -62,7 +62,7 @@ class _LeRelation(lecrud._LeCrud):
62 62
         filters, rel_filters = super()._prepare_filters(filters_l)
63 63
         res_filters = list()
64 64
         for field, op, value in filters:
65
-            if field in [cls._lesup_name, cls._lesub_name]:
65
+            if field in [cls._superior_field_name, cls._subordinate_field_name]:
66 66
                 if isinstance(value, str):
67 67
                     try:
68 68
                         value = int(value)
@@ -169,7 +169,7 @@ class _LeRel2Type(_LeRelation):
169 169
             datas['nature'] = None
170 170
         if cls == cls.name2class('LeRel2Type') and classname is None:
171 171
             # autodetect the rel2type child class
172
-            classname = relname(datas[self._lesup_name], datas[self._lesub_name])
172
+            classname = relname(datas[self._superior_field_name], datas[self._subordinate_field_name])
173 173
         return super().insert(datas, classname)
174 174
 
175 175
     ## @brief Given a superior and a subordinate, returns the classname of the give rel2type

Loading…
Cancel
Save