2017-04-26 117 views
0

我需要用yii2框架來做到這一點,我無法在網上找到任何東西。如何在活動記錄的yii2框架中做子查詢?

我需要這樣一個地方內執行與 'AND' 和 'OR':

$query->andFilterWhere(['like', 'fecha_creacion', $this->fecha_creacion]) 
      ->andFilterWhere(['like', 'fecha_reapertura', $this->fecha_reapertura]) 
      ->andFilterWhere(['like', 'fecha_clausura', $this->fecha_clausura]) 
      ->andFilterWhere(['like', 'observacion', $this->observacion]) 
      ->andFilterWhere(function($query) { 
       $query->where(['like', 'estudiantes.nombres', $this->estudiante]); 
       $query->orWhere(['like', 'estudiantes.apellidos', $this->estudiante]); 
      }); 

但這一點兒也不工作。所以我的問題是如何做到這一點?與當然積極的記錄。

回答

1

試試這個:

$query->andFilterWhere(['like', 'fecha_creacion', $this->fecha_creacion]) 
      ->andFilterWhere(['like', 'fecha_reapertura', $this->fecha_reapertura]) 
      ->andFilterWhere(['like', 'fecha_clausura', $this->fecha_clausura]) 
      ->andFilterWhere(['like', 'observacion', $this->observacion]) 
      ->andFilterWhere([ 'OR', 
           ['like', 'estudiantes.nombres', $this->estudiante], 
           ['like', 'estudiantes.apellidos', $this->estudiante] 
      ]); 
+0

驚人!你是在哪裏找到那個東西的 ?它工作得很好。謝謝! –