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


PHP AbstractObject::update方法代码示例

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


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

示例1: update

 /**
  * @return void
  */
 public function update()
 {
     parent::update();
     $this->getResource()->update();
 }
开发者ID:rolandstoll,项目名称:pimcore,代码行数:8,代码来源:Folder.php

示例2: update

 /**
  * @return void
  */
 protected function update()
 {
     parent::update();
     $this->getDao()->update();
 }
开发者ID:pimcore,项目名称:pimcore,代码行数:8,代码来源:Folder.php

示例3: update

 /**
  * @throws \Exception
  */
 protected function update()
 {
     $fieldDefintions = $this->getClass()->getFieldDefinitions();
     foreach ($fieldDefintions as $fd) {
         $getter = "get" . ucfirst($fd->getName());
         $setter = "set" . ucfirst($fd->getName());
         if (method_exists($this, $getter)) {
             //To make sure, inherited values are not set again
             $inheritedValues = AbstractObject::doGetInheritedValues();
             AbstractObject::setGetInheritedValues(false);
             $value = $this->{$getter}();
             if (is_array($value) and ($fd instanceof ClassDefinition\Data\Multihref or $fd instanceof ClassDefinition\Data\Objects)) {
                 //don't save relations twice
                 $this->{$setter}(array_unique($value));
             }
             AbstractObject::setGetInheritedValues($inheritedValues);
             $value = $this->{$getter}();
             $omitMandatoryCheck = $this->getOmitMandatoryCheck();
             /*$timeSinceCreation = (time()-$this->getCreationDate());
               if($timeSinceCreation <= 5){
                   // legacy hack: in previous version there was no check for mandatory fields,
                   // and everybody uses the save method for new object creation - so now let's evict the mandatory check
                   // if the object was created within the last 5 seconds
                   $omitMandatoryCheck=true;
                   \Logger::debug("executing mandatory fields check for object [ ".$this->getId()." ]");
               }
               */
             //check throws Exception
             try {
                 $fd->checkValidity($value, $omitMandatoryCheck);
             } catch (\Exception $e) {
                 if ($this->getClass()->getAllowInherit()) {
                     //try again with parent data when inheritance in activated
                     try {
                         $getInheritedValues = AbstractObject::doGetInheritedValues();
                         AbstractObject::setGetInheritedValues(true);
                         $value = $this->{$getter}();
                         $fd->checkValidity($value, $omitMandatoryCheck);
                         AbstractObject::setGetInheritedValues($getInheritedValues);
                     } catch (\Exception $e) {
                         throw new \Exception($e->getMessage() . " fieldname=" . $fd->getName());
                     }
                 } else {
                     throw new \Exception($e->getMessage() . " fieldname=" . $fd->getName());
                 }
             }
         }
     }
     parent::update();
     $this->getResource()->update();
     // scheduled tasks are saved in $this->saveVersion();
     $this->saveVersion(false, false);
     $this->saveChilds();
 }
开发者ID:pawansgi92,项目名称:pimcore2,代码行数:57,代码来源:Concrete.php

示例4: update

 /**
  * @throws \Exception
  */
 protected function update()
 {
     $fieldDefintions = $this->getClass()->getFieldDefinitions();
     foreach ($fieldDefintions as $fd) {
         $getter = "get" . ucfirst($fd->getName());
         $setter = "set" . ucfirst($fd->getName());
         if (method_exists($this, $getter)) {
             //To make sure, inherited values are not set again
             $inheritedValues = AbstractObject::doGetInheritedValues();
             AbstractObject::setGetInheritedValues(false);
             $value = $this->{$getter}();
             if (is_array($value) and ($fd instanceof ClassDefinition\Data\Multihref or $fd instanceof ClassDefinition\Data\Objects)) {
                 //don't save relations twice
                 $this->{$setter}(array_unique($value));
             }
             AbstractObject::setGetInheritedValues($inheritedValues);
             $value = $this->{$getter}();
             $omitMandatoryCheck = $this->getOmitMandatoryCheck();
             //check throws Exception
             try {
                 $fd->checkValidity($value, $omitMandatoryCheck);
             } catch (\Exception $e) {
                 if ($this->getClass()->getAllowInherit()) {
                     //try again with parent data when inheritance in activated
                     try {
                         $getInheritedValues = AbstractObject::doGetInheritedValues();
                         AbstractObject::setGetInheritedValues(true);
                         $value = $this->{$getter}();
                         $fd->checkValidity($value, $omitMandatoryCheck);
                         AbstractObject::setGetInheritedValues($getInheritedValues);
                     } catch (\Exception $e) {
                         throw new \Exception($e->getMessage() . " fieldname=" . $fd->getName());
                     }
                 } else {
                     throw new \Exception($e->getMessage() . " fieldname=" . $fd->getName());
                 }
             }
         }
     }
     parent::update();
     $this->getDao()->update();
     // scheduled tasks are saved in $this->saveVersion();
     $this->saveVersion(false, false);
     $this->saveChildData();
 }
开发者ID:sfie,项目名称:pimcore,代码行数:48,代码来源:Concrete.php

示例5: update

 /**
  * @return void
  */
 public function update()
 {
     parent::update();
     $this->getDao()->update();
 }
开发者ID:ChristophWurst,项目名称:pimcore,代码行数:8,代码来源:Folder.php


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