Главная » PHP » Проверка, если разговор уже существует Laravel
Проверка, если разговор уже существует Laravel
Эй, ребята, я создаю красноречивый запрос, чтобы увидеть разговор с множеством участников уже существует. Причина этого в том, что мы не можем вести один и тот же разговор с одними и теми же участниками более одного раза.
Вот мой красноречивый запрос:
$convos = Conversation::whereHas('participant', function ($query) use ($participantIds) {
$query->whereIn('user_id', $participantIds)
->groupBy('convo_id')
->havingRaw('COUNT(convo_id)='.count($participantIds));
})->get();
Например, $ memberIds равен [1, 2] или [1, 2, 3].
Как проверить, существует ли диалог с идентификаторами в $ memberIds? Приведенный выше запрос вернет разговор, который имеет ЛЮБОЙ участников в массиве
Поэтому, если у меня есть разговор с Джоном (2) и Мэттом (4), но я попытаюсь поговорить только со мной и Джоном, этот запрос покажет, что у меня уже есть разговор с Джоном.