當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Doctrine_Record::preDelete方法代碼示例

本文整理匯總了PHP中Doctrine_Record::preDelete方法的典型用法代碼示例。如果您正苦於以下問題:PHP Doctrine_Record::preDelete方法的具體用法?PHP Doctrine_Record::preDelete怎麽用?PHP Doctrine_Record::preDelete使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Doctrine_Record的用法示例。


在下文中一共展示了Doctrine_Record::preDelete方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: delete

 /**
  * deletes this data access object and all the related composites
  * this operation is isolated by a transaction
  *
  * this event can be listened by the onPreDelete and onDelete listeners
  *
  * @return boolean      true on success, false on failure
  */
 public function delete(Doctrine_Record $record)
 {
     if (!$record->exists()) {
         return false;
     }
     $this->conn->beginTransaction();
     $event = new Doctrine_Event($this, Doctrine_Event::RECORD_DELETE);
     $record->preDelete($event);
     $record->state(Doctrine_Record::STATE_LOCKED);
     $this->deleteComposites($record);
     $record->state(Doctrine_Record::STATE_TDIRTY);
     if (!$event->skipOperation) {
         $this->conn->transaction->addDelete($record);
         $record->state(Doctrine_Record::STATE_TCLEAN);
     }
     $record->postDelete($event);
     $this->conn->commit();
     return true;
 }
開發者ID:snouhaud,項目名稱:camptocamp.org,代碼行數:27,代碼來源:UnitOfWork.php

示例2: _preDelete

 /**
  * Invokes preDelete event listeners.
  *
  * @return boolean  Whether a listener has used it's veto (don't delete!).
  */
 private function _preDelete(Doctrine_Record $record)
 {
     $event = new Doctrine_Event($record, Doctrine_Event::RECORD_DELETE);
     $record->preDelete($event);
     $record->getTable()->getRecordListener()->preDelete($event);
     return $event->skipOperation;
 }
開發者ID:sensorsix,項目名稱:app,代碼行數:12,代碼來源:UnitOfWork.php

示例3: delete

 /**
  * deletes given record and all the related composites
  * this operation is isolated by a transaction
  *
  * this event can be listened by the onPreDelete and onDelete listeners
  *
  * @return boolean      true on success, false on failure
  */
 public function delete(Doctrine_Record $record)
 {
     if (!$record->exists()) {
         return false;
     }
     $this->conn->beginTransaction();
     $event = new Doctrine_Event($record, Doctrine_Event::RECORD_DELETE);
     $record->preDelete($event);
     $table = $record->getTable();
     $table->getRecordListener()->preDelete($event);
     $state = $record->state();
     $record->state(Doctrine_Record::STATE_LOCKED);
     $this->deleteComposites($record);
     if (!$event->skipOperation) {
         $record->state(Doctrine_Record::STATE_TDIRTY);
         if ($table->getOption('joinedParents')) {
             foreach ($table->getOption('joinedParents') as $parent) {
                 $parentTable = $table->getConnection()->getTable($parent);
                 $this->conn->delete($parentTable, $record->identifier());
             }
         }
         $this->conn->delete($table, $record->identifier());
         $record->state(Doctrine_Record::STATE_TCLEAN);
     } else {
         // return to original state
         $record->state($state);
     }
     $table->getRecordListener()->postDelete($event);
     $record->postDelete($event);
     $table->removeRecord($record);
     $this->conn->commit();
     return true;
 }
開發者ID:kirvin,項目名稱:the-nerdery,代碼行數:41,代碼來源:UnitOfWork.php


注:本文中的Doctrine_Record::preDelete方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。