Получите последние записи чата для каждого пользователя с помощью Laravel Eloquent ⇐ Php

Кемеровские программисты php общаются здесь
Anonymous
Получите последние записи чата для каждого пользователя с помощью Laravel Eloquent

Сообщение Anonymous »

Я пытаюсь создать чат для своего сайта в Laravel. Я выбираю последние чаты для пользователя, где пользователь может видеть список пользователей, с которыми он может общаться.
Вот мой запрос:

Код: Выделить всё

$data = [];
$chatusers = Chat::latest()->get(['reciver_id']);
$chatusers = collect($chatusers)->unique()->values()->all();

foreach ($chatusers as $user) {
if ($user['reciver_id'] >= 5000) {
$message = Chat::where('reciver_id', $user['reciver_id'])
->latest()
->first();

array_push($data, $message);
} else {
$message = Chat::where('sender_id', $user['reciver_id'])
->orWhere('reciver_id', $user['reciver_id'])
->latest()
->first();

array_push($data, $message);
}
}
Прикрепляю скриншоты таблиц БД:
https://i.sstatic.net/dKEKs.jpg
Вот экран для списка чатов:-
https://i.sstatic.net/6VAmH.jpg
Я не управляю отношениями.

Подробнее здесь: https://stackoverflow.com/questions/578 ... l-eloquent

Вернуться в «Php»