/** * Удаление сущности из БД * * @param EntityORM $oEntity Объект сущности * @return EntityORM|bool */ protected function _DeleteEntity($oEntity) { $res = $this->oMapperORM->DeleteEntity($oEntity); if ($res) { // сбрасываем кеш $sEntity = $this->Plugin_GetRootDelegater('entity', get_class($oEntity)); $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array($sEntity . '_delete')); // Удаление связей many_to_many foreach ($oEntity->_getRelations() as $sRelName => $aRelation) { if ($aRelation['type'] == EntityORM::RELATION_TYPE_MANY_TO_MANY) { $this->_deleteManyToManyRelation($oEntity, $sRelName); } } return $oEntity; } return false; }
/** * Удаление сущности из БД * * @param EntityORM $oEntity Объект сущности * * @return EntityORM|bool */ protected function _DeleteEntity($oEntity) { $res = $this->oMapper->DeleteEntity($oEntity); if ($res) { // сбрасываем кеш $sEntity = E::ModulePlugin()->GetRootDelegater('entity', get_class($oEntity)); E::ModuleCache()->Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array($sEntity . '_delete')); // Обновление связей many_to_many foreach ($oEntity->_getRelations() as $sRelName => $aRelation) { if ($aRelation[0] == EntityORM::RELATION_TYPE_MANY_TO_MANY) { $this->_deleteManyToManySet($aRelation[3], $aRelation[4], $oEntity->_getPrimaryKeyValue()); } } return $oEntity; } return false; }