即使 laravel 中不存在数据,关系仍会返回行

Relation still returning row even if data not exist in laravel

我有这个问题:

 $data=Booking::whereHas('service.user', function($query) use ($id){
                    $query->where('user_id', $id);
 })->get();

此处 service.user 与用户相关,我只想 return 来自预订 table 的记录,其中 user_id 存在于 service.user 关系中但使用此当 service.user 关系中不存在 user_id 时,我仍然从预订 table 获取记录。任何人都可以提出一些解决方案。谢谢

你能试试这个吗?我想我可能是错的,但为什么不试一试 (-:

$data = Booking::whereHas('service', function ($query) use ($id) {
            $query->whereHas('user', function ($query) use ($id) {
                $query->where('user_id', $id);
            });
        })->get();