Как в Yii2 в RESTfull вывести список постов с 5 комментариями к каждому (если они есть)?
Есть 2 таблицы в базе данных Post и Comment. Связанные через один ко многим. Нужно при вызове actionIndex в контроллере вывести все посты но с добавленными в ответ комментариями к каждому посту. количество комментариев при этом нужно ограничить (например 5). Как это сделать?
public function actionIndex(){
$posts = Post::find()->joinWith('comment', true)->asArray()->All();
return $posts;
}
Выводит почти то что нужно, но со всеми комментариями к каждому посту (нужно ограничить 5)
Ответы (1 шт):
Автор решения: Shokhaa
→ Ссылка
$posts = Post::find()->with(['comment' => function($query){
$query->limit(5)->orderBy(['id' => SORT_DESC]);
}])->asArray()->All();