예제 #1
0
 /**
  * Validate unique configuration data before save
  * Set id to object if exists configuration instead of throw exception
  *
  * @SuppressWarnings(PHPMD.CamelCaseMethodName)
  *
  * @param \Magento\Framework\Model\AbstractModel $object The current configuration value being saved
  *
  * @return $this
  */
 protected function _checkUnique(\Magento\Framework\Model\AbstractModel $object)
 {
     $select = $this->getConnection()->select()->from($this->getMainTable(), [$this->getIdFieldName()])->where('scope = :scope')->where('scope_code = :scope_code')->where('path = :path');
     $bind = ['scope' => $object->getScope(), 'scope_code' => $object->getScopeCode(), 'path' => $object->getPath()];
     $configId = $this->getConnection()->fetchOne($select, $bind);
     if ($configId) {
         $object->setId($configId);
     }
     return $this;
 }
예제 #2
0
파일: Data.php 프로젝트: aiesh/magento2
 /**
  * Validate unique configuration data before save
  * Set id to object if exists configuration instead of throw exception
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 protected function _checkUnique(\Magento\Framework\Model\AbstractModel $object)
 {
     $select = $this->_getReadAdapter()->select()->from($this->getMainTable(), array($this->getIdFieldName()))->where('scope = :scope')->where('scope_id = :scope_id')->where('path = :path');
     $bind = array('scope' => $object->getScope(), 'scope_id' => $object->getScopeId(), 'path' => $object->getPath());
     $configId = $this->_getReadAdapter()->fetchOne($select, $bind);
     if ($configId) {
         $object->setId($configId);
     }
     return $this;
 }
 /**
  * after save callback
  *
  * @param \Magento\Framework\Model\AbstractModel|\Mageplaza\Blog\Model\Category $object
  * @return $this
  */
 protected function _afterSave(\Magento\Framework\Model\AbstractModel $object)
 {
     /** @var \Mageplaza\Blog\Model\Category $object */
     if (substr($object->getPath(), -1) == '/') {
         $object->setPath($object->getPath() . $object->getId());
         $this->savePath($object);
     }
     $this->savePostRelation($object);
     return parent::_afterSave($object);
 }