/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Authors::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]); $query->andFilterWhere(['like', 'firstname', $this->firstname])->andFilterWhere(['like', 'lastname', $this->lastname]); return $dataProvider; }
public function getAuthors() { return $this->hasOne(Authors::className(), ['id' => 'author_id']); }
public function getAuthors() { $authors = Authors::find()->all(); $out = []; foreach ($authors as $row) { $out[$row->id] = $row->lastname . ' ' . $row->firstname; } return $out; }