雄辩/十月'many-to-many'关系 - 如何按相关数据搜索?



以下是模型的简化视图,并且根据db

的列。
Route
id
City 
id
name
RouteCityPivot
id
city_id
route_id

一条路线只能有两个相关的城市。假设他们是柏林和慕尼黑。我如何找到城市名称的路线?

此代码可以找到几个路由,至少有一个城市的一个

$route = Route::whereHas('cities', function ($q) use ($from, $to){
            q->whereIn('name', [$from, $to]);
        })->get();

我如何找到给定城市的完全2 的路线?谢谢!

根据同一问题

解决方案是

 $route = Route::whereHas('cities', function ($q) use ($cities){
            $q->whereIn('name', $cities);
        }, '=', count($cities))->get();

最新更新