MasterGerold
@MasterGerold

Как передать несколько значений которые занесены в чекбоксы в yii2?

Доброго времени суток! Есть несколько чекбоксов, когда я отправляю форму то в базу данных заносится только значение первой кнопки. Остальные теряются...
public function actionAddHouse(){
        $model = new House();
        $realtors = Realtors::find()->asArray()->all();
        if($model->load(Yii::$app->request->post())){
            if($model->save()){
                Yii::$app->session->setFlash('success', 'Дом успешно поставлен на продажу!');
                return $this->refresh();
            } else {
                Yii::$app->session->setFlash('error', 'Ошибка заполнения формы!');
            }
        }
        return $this->render('house', compact('model', 'realtors'));
    }

А вот и как реализованы сами боксы:
<?php $items = \yii\helpers\ArrayHelper::map($realtors, 'id', 'name') ?>
<?=$form->field($model, 'realtor_id')->checkboxList($items) ?>
  • Вопрос задан
  • 964 просмотра
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
радио кнопок

а почему тогда checkboxList?
Если radio то все правильно, они и должны давать 1 выбор из множества, если все же checkbox - то смотрите что в post запросе улетает. И что в итоге Вы сохраняете. С чекбоксами будет не стандартный crud так как улетать должен массив, который потом видимо надо или в json загнать или перебрать и сохранить куда надо.
Ваш экшен и не должен ничего сохранять, если в моделе не переопределен beforeSave. Если переопределен, тогда его код в студию.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы