setAttributesForFutureParent() public method

Установка атрибутов если родителем этой ноды будет новый, читаем родителя, и обновляем необходимые данные у себя
public setAttributesForFutureParent ( Tree $parent )
$parent Tree
コード例 #1
0
ファイル: Tree.php プロジェクト: skeeks-cms/cms
 /**
  * Создание дочерней ноды
  *
  * @param Tree $target
  * @return Tree
  * @throws Exception
  * @throws \skeeks\sx\validate\Exception
  */
 public function processCreateNode(Tree $target)
 {
     //Текущая сущьность должна быть уже сохранена
     if ($this->isNewRecord) {
         throw new Exception('Текущая сущьность должна быть уже сохранена');
     }
     //Новая сущьность должна быть еще не сохранена
     if (!$target->isNewRecord) {
         throw new Exception('Новая сущьность должна быть еще не сохранена');
     }
     //Установка атрибутов будущему ребенку
     $target->setAttributesForFutureParent($this);
     if (!$target->save(false)) {
         throw new Exception(\Yii::t('skeeks/cms', "Failed to create the child element:  ") . Json::encode($target->attributes));
     }
     $this->save(false);
     return $target;
 }