Я пытаюсь составить список с комментариями, включая данные о пользователе и его машине, которые хранятся в других таблицах.
Контроллер содержал такой запрос:
Charging::available()
->with('some.ports', 'shares')
->find($id);
И я переписал егона такие:
Charging::available()
->with('some.ports', 'shares')
->with('chargingComments.user')
->with('chargingComments.car')
->find($id);
Вот так выглядит ChargingComments
модель:
public function comments() {
return $this->belongsTo(\App\Models\Charging::class);
}
public function user() {
return $this->belongsTo(\App\Models\User::class);
}
public function car() {
// here 'id' is the row in the table with users cars
// 'car_id' is in the table with comments
return $this->hasOne(\App\Models\UserCar::class, 'id', 'car_id');
}
Он возвращает мне данные о пользователе каждого комментария и его машине, но, между прочим, я должен как-то ограничитьрезультат до 10 строк.Я пытался добавить
'user' => function($query) {
return $query->take(10);
}])
Но это не сработало.
Я уверен, что должен быть лучший способ написать этот код, но не знаю, как