Задать вопрос
@madphoenix

Передать значения из формы поиска (checkboxList) в модель поиска в Yii2?

Здравствуйте! Подскажите, пожалуйста, как передать значения из формы поиска (checkboxList) в модель поиска в Yii2?

view:
<?= $form->field($searchModel, 'type')->checkboxList(['0' => 'Доход', '1' => 'Расход']) ?>


controller:
$searchModel = new ModelSearch();
        $dataProvider = $searchModel->search(Yii::$app->request->post());


searchModel:
public function search($params)
    {
        $query = Payment::find()->orderBy('pay_date ASC');

        // add conditions that should always apply here

        $dataProvider = new ActiveDataProvider([
            'query' => $query,
            'pagination' => false,
        ]);
  
        $this->load($params);
        if (!$this->validate()) {
            return $dataProvider;
        }

        if (is_array($this->type)) {
        
            $query->andFilterWhere(['in', 'type', array_keys($this->type)]);
        } 
        else {
            $query->andFilterWhere([
                'type' => $this->type
            ]);
        }

        // grid filtering conditions
        $query->andFilterWhere([
            'id' => $this->id,
            'category_id' => $this->category_id,
            'pay_date' => $this->pay_date,
            'status' => $this->status,
        ]);

        $query->andFilterWhere(['like', 'name', $this->name])
            ->andFilterWhere(['user_id' => Yii::$app->user->identity->id]);

        return $dataProvider;
    }


Но почему-то массив не присваивается. В чем может быть загвоздка?

Благодарю за ответы!
  • Вопрос задан
  • 339 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@madphoenix Автор вопроса
Разобрался! Проблема была в правилах валидации
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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