如何在 Laravel 中检查多对多关系

问题描述 投票:0回答:0

我在检查时遇到问题 有没有同成员的对话

我有“对话”表和“对话用户”表 对话表有(id,user_creator_id) conversation_user 有 ( conversation_id , user_id)

我有这个模型:

class Conversation extends 模型 {

public function ConversationUser() 
{
   return $this->hasMany('App\Models\ConversationUser', 'conversation_id' ,'id');

}

在控制器中我正在尝试使用这个功能:

$ids = $this->collectUsersIds();
$same_conversation = Conversation::where('user_id', auth()->user()->id)
->whereHas('ConversationUser', function($q) use($ids)
{$q->whereIn('user_id', $ids);}, '=', count($ids))
->get();

但是我没有得到正确的结果 我想在创建新聊天时 检查对话中是否有相同的成员

谢谢

laravel many-to-many
© www.soinside.com 2019 - 2024. All rights reserved.