/** * @param CreateAlbum $form * @return \ImageMS\models\Album\AlbumData */ public function loadFromForm(CreateAlbum $form) { $arrAttr = $this->getObject()->getAttributes(); foreach ($form->getAttributes() as $key => $value) { if (is_null($value) || !array_key_exists($key, $arrAttr)) { continue; } $this->{$key} = $value; } /* @var $request \app\modules\services\components\GiraffeRequest */ $request = \Yii::$app->request; $member = $request->getMember(); $this->creator_model_name = $member->className(); $this->creator_object_id = $member->getId(); return $this; }
/** * Добавление альбома * * @example {"user": {"id": "1"},"data":{"name":"", "description":"", "file_information_id":1}} */ public function actionCreate() { /* @var $request \app\modules\services\components\GiraffeRequest */ $request = \Yii::$app->request; $data = $request->getApiData(); $form = new CreateAlbum(); $form->setAttributes($data); if (!$form->validate()) { return $this->renderJsonMessage($form->getErrors()); } $albumManager = new AlbumManager(); /* @var $albumData AlbumData */ $albumData = $albumManager->getObjectData(); $albumData->loadFromForm($form); $albumRow = $albumManager->add($albumData); return $this->renderJsonMessage($albumRow); }