Yii2, почему не работает search model? С помощью GII был создан CRUD. Созданы search model, controller, и вьюхи. В контроллере, в actionIndex (read) такой код:$searchModel = new ProductSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
Т.е. насколько я понимаю, передавая параметры в search() мы произведем фильтрацию. Параметры передаю(проверяю Yii::$app->request->queryParams, параметры в нем есть, все ок, напр id=2, type=mfu), однако dataProvider выводит ВСЕ товары, а не по фильтру. Что делаю не так?

21 Авг 2019 в 07:06
262 +1
0
Ответы
1

Проверьте следующие возможные причины, по которым search model может не работать как ожидается:

Убедитесь, что в файле ProductSearch установлен правильный метод search(). Метод должен возвращать экземпляр ActiveDataProvider.

Проверьте, что правильно настроены правила валидации в модели ProductSearch. Неправильные правила валидации могут привести к неправильной фильтрации данных.

Проверьте, что в правилах поиска (например, в методе search()) правильно учитываются переданные параметры для фильтрации. Убедитесь, что вы используете эти параметры при формировании запроса к базе данных.

Проверьте, что вы правильно настроили параметры фильтра в запросе. Например, если вы фильтруете по полю "id", убедитесь, что этот параметр правильно передается в метод search() и что он правильно используется при формировании запроса.

Если после проверки все выглядит правильно, попробуйте напечатать вывод запроса SQL, который формируется при вызове метода search(). Это поможет понять, что именно идет не так при фильтрации данных. Вы можете использовать метод ->createCommand()->getRawSql() для вывода сформированного запроса SQL.

Надеюсь, эти советы помогут вам разобраться с проблемой. Если у вас возникнут дополнительные вопросы, не стесняйтесь задать их.

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 749 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир