В настоящее время я работаю в частной системе обмена сообщениями в Laravel.
Я пытаюсь отобразить список потоков сообщений в папке входящих сообщений пользователя.Это работает аналогично тому, как система мгновенных сообщений отображает сообщения, при этом все сообщения между двумя пользователями хранятся в одном потоке.
У меня проблема в том, что у меня несколько типов сообщений: «Сообщение» и «Задача».В папке «Сообщения» я хочу отображать темы сообщений только с типом «Сообщение».Чтобы сделать это, я использую следующий код в моем контроллере:
$messageThreads = Thread::where('type', 'Message')
->where('sender_id', $user)
->orWhere('recipient_id', $user)
->get()
->sortByDesc('updated_at');
Это, однако, не работает и по-прежнему извлекает потоки сообщений, в которых тип "Задача", а не ограничивается "Сообщение"
Я также попробовал:
$messageThreads = Thread::where('sender_id', $user)
->orWhere('recipient_id', $user)
->where('type', 'Message')
->get()
->sortByDesc('updated_at');
Но это также вернуло тот же результат.
Интересно, если я просто оставлю это как
$messageThreads = Thread::where('type', 'Message')
Он будет получать только сообщения с типом «Сообщение».Только когда я добавляю другие предложения where, он перестает работать должным образом.