/** * Creates a new OptionsList model. * If creation is successful, the browser will be redirected to the 'view' page. * * @return mixed */ public function actionCreate() { $model = new OptionsList(); $preset_id = null; if (Yii::$app->request->isPost) { $type_id = Yii::$app->request->post()['OptionsList']['type_id']; if ($type_id) { /** * @var $option_type OptionTypes * @var $preset OptionPresets */ $option_type = OptionTypes::find()->where(['id' => $type_id])->one(); if ($option_type) { $type_alias = $option_type->alias; if (in_array($type_alias, ArrayHelper::merge(MyHelper::TYPES_WITH_PRESET_ARRAY, MyHelper::TYPES_WITH_MULTIPLE_PRESET_ARRAY))) { $preset = new OptionPresets(); $preset->save(); $preset_id = $preset->id; } } } } $appUrl = '/backend/'; if ($model->load(Yii::$app->request->post()) && $model->save()) { if ($preset_id) { $model->preset_id = $preset_id; $model->save(); } return $this->redirect(['update', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model, 'appUrl' => $appUrl]); } }