当前位置: 首页>>代码示例>>PHP>>正文


PHP MUtil_Model_ModelAbstract::setAutoSave方法代码示例

本文整理汇总了PHP中MUtil_Model_ModelAbstract::setAutoSave方法的典型用法代码示例。如果您正苦于以下问题:PHP MUtil_Model_ModelAbstract::setAutoSave方法的具体用法?PHP MUtil_Model_ModelAbstract::setAutoSave怎么用?PHP MUtil_Model_ModelAbstract::setAutoSave使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MUtil_Model_ModelAbstract的用法示例。


在下文中一共展示了MUtil_Model_ModelAbstract::setAutoSave方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: apply

 /**
  *
  * @param string $trackingField The field that stores the tracking value
  * @param string $trackedField   The field whose changing is tracked
  * @param string $oldValueField Optional, the field to store a copy of the original value in
  */
 public function apply($trackingField, $trackedField, $oldValueField = null)
 {
     if (null === $oldValueField) {
         // Defautl name
         $oldValueField = self::OLD_FIELD_PREFIX . $trackedField;
         // Check if a fields already existed
         if (method_exists($this->_model, 'getKeyCopyName')) {
             $copyName = $this->_model->getKeyCopyName($trackedField);
             if ($this->_model->has($copyName)) {
                 $oldValueField = $copyName;
             }
         }
     }
     if (!$this->_model->has($oldValueField)) {
         $this->_model->set($oldValueField, 'elementClass', 'Hidden', __CLASS__, $trackedField);
         $this->_model->setOnLoad($oldValueField, array($this, 'loadOldValue'));
     }
     if (!$this->_model->has($trackingField)) {
         // Only load the original value and ste the original result when it was not already in the model
         $this->_model->setAutoSave($trackingField);
         // $this->_model->setOnLoad($trackingField, $this->_unchangedValue);
     }
     $this->_model->set($trackingField, __CLASS__, array($trackedField, $oldValueField));
     $this->_model->setOnSave($trackingField, array($this, 'saveValue'));
     // Store the extra hidden fields needed
     $hiddenFields = $this->_model->getMeta(self::HIDDEN_FIELDS, array());
     $hiddenFields[] = $oldValueField;
     $this->_model->setMeta(self::HIDDEN_FIELDS, $hiddenFields);
     // Make sure the fields are in the result set
     $this->_model->get($trackedField);
     $this->_model->get($trackingField);
     $this->_model->get($oldValueField);
 }
开发者ID:GemsTracker,项目名称:MUtil,代码行数:39,代码来源:ChangeTracker.php


注:本文中的MUtil_Model_ModelAbstract::setAutoSave方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。