for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace app\modules\admin\models\search;
use app\models\UserModel;
use yii\data\ActiveDataProvider;
/**
* Class UserSearch
*
* @package app\modules\admin\models\search
*/
class UserSearch extends UserModel
{
* @inheritdoc
public function rules(): array
return [
[['id', 'status'], 'integer'],
[['username', 'email'], 'safe'],
];
}
* Creates data provider instance with search query applied
* @param $params
* @param int $pageSize
* @return ActiveDataProvider
public function search(array $params, int $pageSize = 10): ActiveDataProvider
$query = UserModel::find();
$dataProvider = new ActiveDataProvider([
'query' => $query,
'pagination' => [
'pageSize' => $pageSize,
],
'sort' => [
'defaultOrder' => ['id' => SORT_DESC],
]);
$this->load($params);
if (!$this->validate()) {
return $dataProvider;
$query->andFilterWhere([
'id' => $this->id,
'status' => $this->status,
$query->andFilterWhere(['like', 'username', $this->username])
->andFilterWhere(['like', 'email', $this->email]);