sko6 но у меня через with и замыкание выводит все продукты
Только что провел тест у себя.
Есть модель Carrier со связью BelongsToMany
с моделью Transfer по ключу transfers
.
Ищем Carrier у которого есть связь с Transfer по ID = 643
:
$carriers = Carrier::with(['transfers' => function($query){
$query->where('id', 643);
}])->first();
Eloquent находит Carrier с ID = 3
, у которого в transfers
один обьект Transfer с ID = 643
;
Если запросить модель Carrier с ID = 3
просто с with('transfers')
, выводится вся коллекция связи.
Все работает корректно. На твоей стороне какая-то локальная ошибка.