public function createTreeAfterInsert(Event $e) { $tree = new Tree(['name' => 'Главная страница', 'site_code' => $this->code]); if (!$tree->save(false)) { throw new Exception('Failed to create a section of the tree'); } }
/** * Создание дочерней ноды * * @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; }