前言:YII2中可以使用model中的relation關系進行表關聯
應用場景舉例:
需要查找所有使用者的資訊,并關聯查詢(with)出使用者的發表過的文章,且文章的評論不為0的資料。
$user= user::find()->with([
'articles' => function ($query){
$query->where('comment>0');
}
])->all();
$query是YII傳回的查詢類,同ActiveQuery一樣,可以對其使用model的相關指令
例如:
$query->where('comment>0')->orderby('update_time DESC')
也可以使用閉包函數進行傳遞外部參數
var $condition = ;//評論數對比條件
$user= user::find()->with([
'articles' => function ($query) use($condition) {
$query->where(['>','comment',$condition]);
}
])->all();