$model = Articles::find()->where(['id' => $id])->joinWith('comments')->all();
// Получить статью с таким-то id, со статусом "активна" и также получить все комментарии к этой статье у которых //тоже статус "активен"
$query = Articles::find()
->from(['articles' => Articles::tableName()])
->where(['article.status' => Articles::STATUS_ACTIVE, 'article.id' => $id])
->with(['commentss'])
->innerJoinWith([
'comments comment',
'comment.article art' => function(ActiveQuery $query){
$query->andOnCondition(['art.status' => Comments::STATUS_ACTIVE]);
}
]);
Forxxx, ну тут уж Вам разбираться полностью. Я этой штуковиной никогда не пользовался. В виджете есть настройка ActiveDataProvider, вот из этого я и исходил.