|
@@ -329,12 +329,15 @@ class Reference(DataHandler):
|
329
|
329
|
if target_class not in self.__allowed_classes:
|
330
|
330
|
logger.warning('Class of the back_reference given is not an allowed class')
|
331
|
331
|
return False
|
332
|
|
- target_uidfield = target_class.uid_fieldname()[0] #multi uid broken here
|
333
|
332
|
value = datas[fname]
|
334
|
|
- obj = target_class.get([(target_uidfield, '=', value)])
|
335
|
|
- if len(obj) == 0:
|
|
333
|
+ if not target_class.is_exist(value):
|
336
|
334
|
logger.warning('Object referenced does not exist')
|
337
|
335
|
return False
|
|
336
|
+ #target_uidfield = target_class.uid_fieldname()[0] #multi uid broken here
|
|
337
|
+ #obj = target_class.get([(target_uidfield, '=', value)])
|
|
338
|
+ #if len(obj) == 0:
|
|
339
|
+ # logger.warning('Object referenced does not exist')
|
|
340
|
+ # return False
|
338
|
341
|
return True
|
339
|
342
|
|
340
|
343
|
##@brief Utility method designed to fetch referenced objects
|
|
@@ -437,7 +440,7 @@ class MultipleRef(Reference):
|
437
|
440
|
if len(left) == 0:
|
438
|
441
|
return res
|
439
|
442
|
raise LodelDataHandlerConsistencyException("Unable to find \
|
440
|
|
-some referenced objects. Followinf uid were not found : %s" % ','.join(left))
|
|
443
|
+some referenced objects. Following uids were not found : %s" % ','.join(left))
|
441
|
444
|
|
442
|
445
|
## @brief Class designed to handle datas access will fieldtypes are constructing datas
|
443
|
446
|
#@ingroup lodel2_datahandlers
|
|
@@ -446,7 +449,7 @@ some referenced objects. Followinf uid were not found : %s" % ','.join(left))
|
446
|
449
|
#
|
447
|
450
|
# In theory it's able to detect circular dependencies
|
448
|
451
|
# @todo test circular deps detection
|
449
|
|
-# @todo test circulat deps false positiv
|
|
452
|
+# @todo test circular deps false positive
|
450
|
453
|
class DatasConstructor(object):
|
451
|
454
|
|
452
|
455
|
## @brief Init a DatasConstructor
|