Example #1
0
 def delete(self):
     ''' Delete the persisted versions of this objects '''
     if len(self) > 0:
         cls = self.__getitem__(0).__class__
         if not hasattr(cls, 'getClassName'):
             raise Exception("Objects must extend BaseObject")
         obj_ids = map(lambda x: x.getId())
         q = Query(cls)
         q.where_in("_id", obj_ids)
         q.delete()
Example #2
0
 def _get_related_array(self, related_cls_name, values, relation_name=ID_ALIAS):
     ''' Fetch an array of related objects 
     related_cls_name:     Name of the class that is referenced
     values:               Reference values
     relation_name:        Foreign parameter that is referenced
     '''
     if not values:
         return None
     related_cls = _get_class_from_name(related_cls_name)
     q = Query(related_cls)
     q.where_in(relation_name, values)
     res = q.execute()
     if res and res.count() > 0:
         objs = list()
         for item in res:
             objs.append(related_cls.from_dict(item))
         return objs