'yii\rest\IndexAction', 'modelClass' => $this->modelClass, 'dataFilter' => $this->getFilter() ]; return $action; } protected function getFilter() { $keyword = \Yii::$app->request->getBodyParam('keyword'); $category = \Yii::$app->request->getBodyParam('category'); if (empty($keyword) && empty($category)) { return null; } $array = []; if ($keyword) { $array['name'] = ['like' => $keyword]; } if ($category) { $array['cat_id'] = $category; } $filter = ['class' => 'yii\data\ActiveDataFilter', 'filter' => $array, 'searchModel' => ['class' => 'antgoods\goods\models\searchs\GoodsSearch']]; return $filter; } }