for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace app\modules\admin\models\search;
use Yii;
use yii\base\Model;
use yii\data\ActiveDataProvider;
use app\models\News;
/**
* NewsSearch represents the model behind the search form about `app\models\News`.
*/
class NewsSearch extends News
{
* @inheritdoc
public function rules()
return [
['title', 'string'],
['date_pub', 'date', 'format' => 'yyyy-mm-dd'],
['status', 'integer'],
['status', 'in', 'range' => array_keys(News::getStatuses())],
];
}
* Search by request criteria.
*
* @param array|null Filter params.
* @return ActiveDataProvider Data provider.
public function search($params)
$query = News::find();
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort' => [
'defaultOrder' => [
'date_pub' => SORT_DESC,
]
],
'pagination' => [
'pageSize' => 50,
]);
if (!($this->load($params) && $this->validate())) {
return $dataProvider;
$query->andFilterWhere([
'status' => $this->status,
'DATE(date_pub)' => $this->date_pub
$query->andFilterWhere(['like', 'news.title', $this->title]);