Если вы используете Eloquent и Models, вы можете довольно легко сделать это, используя ->count()
.
Без Eloquent вы можете посмотреть на что-то вроде этого:
(Это явно не ТОЧНО то, что вам нужно, но оно должно направить вас по правильному пути)
$album = DB::table('albums')->first();
$image_count = DB::table('images')->where('album_id', $album->id)->count();
Более «красноречивый» способ:
// Album model:
public function images()
{
return $this->hasMany('App\Image');
}
public function getImageCount()
{
return $this->images->count();
}
// Controller
$first_album = auth()->user()->albums->first();
$album_image_count = $first_album->getImageCount();
hasManyThrough()
- это еще один метод Eloquent, который вы не должны упускать из виду:)