Я создал мессенджер для Laravel. Теперь я хочу перечислить все темы, в которых участвует пользователь, с количеством сообщений в каждой теме. Мне нужно количество до предложения where
, потому что я хочу показать только эти потоки, в которых есть сообщения.
Мой текущий запрос:
$threads = Participant::with('thread.messages') -> where('user_id', Auth::user() -> id) -> get();
Участник:
public function user()
{
return $this -> hasOne(User::class, 'id', 'user_id');
}
public function thread()
{
return $this -> hasOne(Thread::class, 'id', 'thread_id');
}
Тема:
public function participants()
{
return $this -> hasMany(Participant::class, 'thread_id', 'id');
}
function messages()
{
return $this -> hasMany(Message::class, 'thread_id', 'id');
}
Сообщение:
function user()
{
return $this -> belongsTo(User::class, 'user_id', 'id');
}
Спасибо!