• Uyarı

Trickler Laravelde WithCount() Metodu ile Alt İlişkilerin Sayısını Alma

impROS

Member
Yönetici
Laravel Artisan
#1
Laravelde bir modelin, alt ilişkilerinin sayısını almak istiyorsak withCount() metodunu kullanabiliriz. Örnek olarak bir "user" modelimiz olsun ve bu user ın postu(yazıları), ve commentleri(yorumları) olsun.. User modelini post ve comment sayılarıyla birlikte çağırmak istersek şöyle bir yol izleyebiliriz:

Öncelikle controllerımızın içine şu kodları yazıyoruz:

Kod:
public function index()
{
$users = User::withCount(['posts', 'comments'])->get();
return view('users', compact('users'));
}
Ardından view ımızın içerisinde şu şekilde sayılara erişebiliriz:

Kod:
@foreach ($users as $user)
<tr>
<td>{{ $user->name }}</td>
<td class="text-center">{{ $user->posts_count }}</td>
<td class="text-center">{{ $user->comments_count }}</td>
</tr>
@endforeach