это ведь не поможет исправить проблему записи?
Таким образом запрос отправляется на тот же экшн откуда он оправляется.
'/launch/update?id={$id}'
// вначале файла
use common\models\TieClass;
$form->field($model, 'class')->dropDownList(TieClass::getAll(), ['prompt' => 'Тип документа:',
'onchange' => '
$.post(
"path/to/controller/action",
{id : $(this).val()},
function(data){
// обрабатываете ответ сервера
}
)'
])
public function actionUpdate($id)
{
if( Yii::$app->request->isAjax){
$model = $this->findModel($id);
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
$model->class = key($_POST); // что это?!! зачем?!!
if($model->save(false)){
return $this->redirect(['view', 'id' => $model->id]);
}
} else {
return $this->render('update', [
'model' => $model,
]);
}
}
}
Да суть в том что контроллер с экшеном у меня по другому называются, видимо в сборке что то не так.
$model->class = key($_POST);
- полнейший бред!Есть
Yii::$app->request->post()
, `тут все данные POST запроса!!!