diff --git a/src/caosadvancedtools/cfood.py b/src/caosadvancedtools/cfood.py
index 4500664031af55e92f5f1c2856e0531be06482f3..a05da2da96c7daa7d0b2f09de29099fb613e7d01 100644
--- a/src/caosadvancedtools/cfood.py
+++ b/src/caosadvancedtools/cfood.py
@@ -415,7 +415,9 @@ def assure_object_is_in_list(obj, containing_object, property_name,
                                        datatype=datatype)
     # TODO: case where multiple times the same property exists is not treated
 
-    if not isinstance(containing_object.get_property(property_name).value, list):
+    if containing_object.get_property(property_name).value is None:
+        containing_object.get_property(property_name).value = []
+    elif not isinstance(containing_object.get_property(property_name).value, list):
         containing_object.get_property(property_name).value = [
             containing_object.get_property(property_name).value]
         containing_object.get_property(property_name).datatype = datatype
@@ -674,7 +676,8 @@ def assure_has_property(entity, name, value, to_be_updated=None,
             tmp_value = el.value.id
 
         if isinstance(tmp_value, list):
-            tmp_value = [i.id if isinstance(i, db.Entity) else i for i in tmp_value]
+            tmp_value = [i.id if isinstance(
+                i, db.Entity) else i for i in tmp_value]
 
         if tmp_value == value:
             contained = True