October 24, 2024 laravel
Cara Menambahkan Limit di Eager Loading Laravel
Limit di eager loading berguna untuk membatasi jumlah rows dari relasi yang diload pada suatu model.
Untuk menambahkan limit pada eager loading, tambahkan constraint pada relasi yang ingin dilimit lalu panggil method limit
di dalam constraint tersebut.
Misalnya ada model User
yang memiliki banyak Post
, lalu ingin diambil suatu User
beserta Post
-nya sebanyak 5 post saja.
use App\Models\User;
$user = User::with([
'posts' => function ($query) {
$query->limit(5);
}
])->find(1);
Fitur ini baru ada di laravel 11, untuk laravel 10 ke bawah, gunakan package https://github.com/staudenmeir/eloquent-eager-limit.