Yii2 - несколько моделей - пустые значения становятся нулями в форме после неудачной проверки - PullRequest
0 голосов
/ 07 марта 2019

У меня есть форма, где я собираю информацию для нескольких моделей.Когда я отправляю форму, и проверка не удалась, поля формы, которые ранее были пустыми, впоследствии заполняются нулями.Подскажите, пожалуйста, где это происходит и почему, и как мне этого избежать?Большое спасибо!

Контроллер:

public function actionCreate($zg_id) {
    $zgmws = [new Zgmw()];
    for ($i = 1; $i <= 10; $i++) {
        $zgmws[] = new Zgmw();
    }

    try {
        if (Model::loadMultiple($zgmws, Yii::$app->request->post()) && Model::validateMultiple($zgmws)) {
            foreach ($zgmws as $zgmw) {
                if ($zgmw->value) {
                    $zgmw->save(false);
                }
            }
            return $this->redirect(Url::previous());
        }
    } catch (\Exception $e) {
        ...
    }
    return $this->render('create', [
        'zgmws' => $zgmws
    ]);

Форма:

foreach ($zgmws as $index => $zgmw) {
    echo $form->field($zgmw, "[$index]value")->textInput([]);
}

Правила:

public function rules() {
    return [
        [['value'], 'number', 'enableClientValidation' => false],
    ];
}
...