/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Leshoz::find(); $query->joinWith(['region']); $dataProvider = new ActiveDataProvider(['query' => $query]); // Add extended sorts for related tables $dataProvider->sort->attributes['region.nazva'] = ['asc' => [Oblasti::tableName() . '.nazva' => SORT_ASC], 'desc' => [Oblasti::tableName() . '.nazva' => SORT_DESC]]; $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'id_obl' => $this->id_obl, 'Data_dogovora' => $this->Data_dogovora, 'post_index' => $this->post_index, 'post_obl' => $this->post_obl, 'post_region' => $this->post_region]); $query->andFilterWhere(['like', 'nazva', $this->nazva])->andFilterWhere(['like', 'N_dogovora', $this->N_dogovora])->andFilterWhere(['like', 'kerivnyk', $this->kerivnyk])->andFilterWhere(['like', 'post_town', $this->post_town])->andFilterWhere(['like', 'post_address', $this->post_address])->andFilterWhere(['like', 'email', $this->email]); // ->andFilterWhere(['like', 'region.nazva', $this->region]); return $dataProvider; }