I am trying to create a chat app in Laravel. When a conversation is created between users, I don't want to record a user as host user. I would like to get a conversation filtered by given users. Example: If USER_1 and USER_2 belong to CONVERSATION_1, I want to filter out CONVERSATION_1 by USER_1 and USER_2 ids.
Here is my table structures.
conversations
id
product_id
conversation_users
id
conversation_id
user_id
Here is my conversation service.
class ConversationService
{
public static function first(User $user){
$admin = getAdmin();
$conversation = Conversation::whereHas("users", function($q) use($user, $admin){
$q->where("user_id", $user->id)->where("user_id", $admin->id);
})->first();
}
}
I know I can't use this statement. $q->where("user_id", $user->id)->where("user_id", $admin->id);
Could you please guide me how to filter a conversation by user ids?