public function actionUpdate() { $post = yii::$app->request->post('FieldValue'); $model = FieldValue::findOne(['item_id' => $post['item_id'], 'field_id' => $post['field_id']]); if (!$model) { $model = new fieldValue(); } else { $field = field::findOne($model->field_id); if ($field->type == 'radio') { FieldValue::deleteAll(['item_id' => $post['item_id'], 'field_id' => $post['field_id']]); $model = new fieldValue(); } } $json = []; if ($model->load(yii::$app->request->post()) && $model->save()) { $json['result'] = 'success'; } else { $json['result'] = 'fail'; $json['error'] = $model->getErrors(); } return json_encode($json); }