Счетчик сводных таблиц модели Laravel 5.5

У меня 3 стола. users,gallery и gallery_blog.gallery_blog имеют gallery_id, а blog_id.gallery_blog — это сводная таблица. У gallery есть user_id и name. users имеет id. У одного пользователя много галерей. Одна галерея имеет много блогов.

Мне нужен запрос, чтобы узнать, сколько блогов в галерее вместе с именем галереи текущего пользователя.

Я написал ниже запрос

use App\User as user_gallery;    
$galleries = user_gallery::find(Auth::user()->id)->gallery;

У меня есть код ниже в модели User.

public function gallery() {   
        return $this->hasMany('App\Models\Gallery');  
    }

person abu abu    schedule 01.12.2017    source источник


Ответы (1)


Вы можете сделать что-то вроде этого:

$galleries = Gallery::where('user_id', Auth::user()->id)->withCount('blogs')->get();

Класс Gallery должен иметь отношение blogs().

Документы

person Amit Gupta    schedule 02.12.2017