/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Region::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $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, 'status' => $this->status]); $query->andFilterWhere(['like', 'country_code', $this->country_code])->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'slug', $this->slug]); return $dataProvider; }
/** * Finds the Region model based on its primary key value. * If the model is not found, a 404 HTTP exception will be thrown. * @param integer $id * @return Region the loaded model * @throws NotFoundHttpException if the model cannot be found */ protected function findModel($id) { if (($model = Region::findOne($id)) !== null) { return $model; } else { throw new NotFoundHttpException('The requested page does not exist.'); } }
/** * @inheritdoc */ public function rules() { return [[['region_id', 'controller_id', 'sim_number', 'imei_number'], 'required'], [['region_id', 'type', 'status'], 'integer'], [['created'], 'safe'], [['latitude', 'longitude', 'sim_number', 'imei_number', 'contact_1_name', 'contact__1_phone', 'contact_1_email', 'contact_2_name', 'contact_2_phone', 'contact_2_email'], 'string', 'max' => 255], [['region_id'], 'exist', 'skipOnError' => true, 'targetClass' => Region::className(), 'targetAttribute' => ['region_id' => 'id']]]; }