예제 #1
0
 /**
  * Inserts a new object into the database
  *
  * @param Morph_Object $object
  * @return Morph_Object
  */
 private function insert(Morph_Object $object)
 {
     $data = $object->__getData();
     //set an id if we do not have one
     if (!array_key_exists('_id', $data)) {
         $id = array('_id' => md5(uniqid(rand(), true)));
         $data = array_merge($id, $data);
     }
     $savedOk = $this->Db->selectCollection($object->collection())->save($data);
     if ($savedOk) {
         $object->__setData($data, Morph_Object::STATE_CLEAN);
     }
     return $object;
 }