where(['name' => 'rules'])->with('value'); if($return == self::OPTION_OBJECT) { return $result->one(); } elseif($return == self::OPTION_ARRAY) { return $result->asArray()->one(); } elseif($return == self::OPTION_VALUE) { return $result->one()->value->value; } else { throw new InvalidParamException(Yii::t('app', 'Must be 1-3')); } } /* public function createOptions($user_id) { if($rows_delete = \Yii::$app->db->createCommand()->delete('option', ['model' => 'common\models\User', 'model_id' => $user_id])->execute()) { Yii::trace( $rows_delete . " rows has been deleted."); } else { Yii::trace( "No rows has been deleted" ); } $rows_insert = Yii::$app->db->createCommand()->batchInsert( 'option', ['model', 'model_id', 'name', 'template'], [ ['common\models\User', $user_id, 'education', '{"template":"empty","params":{"multiple":true}}'], ['common\models\User', $user_id, 'development', '{"template":"empty","params":{"multiple":true}}'], ['common\models\User', $user_id, 'courses', '{"template":"empty","params":{"multiple":true}}'], ['common\models\User', $user_id, 'jobs', '{"template":"empty","params":{"multiple":true}}'], ['common\models\User', $user_id, 'social', '{"template":"empty","params":{"multiple":true}}'], ] )->execute(); Yii::trace( $rows_insert . " rows has been inserted" ); $parent_rows = Option::find()->where(['model' => 'common\models\User', 'model_id' => $user_id, 'option_pid' => NULL])->indexBy('name')->all(); $rows_insert = Yii::$app->db->createCommand()->batchInsert( 'option', ['model', 'model_id', 'name', 'template', 'option_pid'], [ ['common\models\User', $user_id, 'year_from', '{"template":"input","params":{"type":"number"}}', $parent_rows['education']->option_id], ['common\models\User', $user_id, 'year_to', '{"template":"input","params":{"type":"number"}}', $parent_rows['education']->option_id], ['common\models\User', $user_id, 'place', '{"template":"textInput","params":[]}', $parent_rows['education']->option_id], ['common\models\User', $user_id, 'year', '{"template":"input","params":{"type":"number"}}', $parent_rows['development']->option_id], ['common\models\User', $user_id, 'name', '{"template":"textInput","params":[]}', $parent_rows['development']->option_id], ['common\models\User', $user_id, 'year', '{"template":"input","params":{"type":"number"}}', $parent_rows['courses']->option_id], ['common\models\User', $user_id, 'name', '{"template":"textInput","params":[]}', $parent_rows['courses']->option_id], ['common\models\User', $user_id, 'country', '{"template":"textInput","params":[]}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'date_from', '{"template":"datePicker","params":{"dateFormat":"dd-MM-yyyy"}}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'date_to', '{"template":"datePicker","params":{"dateFormat":"dd-MM-yyyy"}}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'type', '{"template":"textInput","params":[]}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'team', '{"template":"input","params":{"type":"number"}}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'time', '{"template":"input","params":{"type":"number"}}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'percent', '{"template":"input","params":{"type":"number"}}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'position', '{"template":"textInput","params":[]}', $parent_rows['jobs']->option_id], ['common\models\User', $user_id, 'facebook', '{"template":"textInput","params":[]}', $parent_rows['social']->option_id], ['common\models\User', $user_id, 'twitter', '{"template":"textInput","params":[]}', $parent_rows['social']->option_id], ['common\models\User', $user_id, 'linkedin', '{"template":"textInput","params":[]}', $parent_rows['social']->option_id], ['common\models\User', $user_id, 'vk', '{"template":"textInput","params":[]}', $parent_rows['social']->option_id], ] )->execute(); } */ }