имеют проблемы с красноречием. Есть запрос
$item = Store::select('id','name')
->with(['product.cart' => function ($query) use($cartWhere) {
$query->where($cartWhere);
}])
->whereHas('product.cart', function ($query) use($cartWhere) {
$query->where($cartWhere);
})
->get();
и средняя цепочка продукт от product.cart Я получаю это
select * from `products` where `products`.`store_id` in (2, 3, 4) and `products`.`deleted_at` is null
Но почему красноречивые игнорируют мой -> где есть фильтр ? Магазин с фильтрами справа, корзина с фильтрами справа, но продукт игнорирует это. как я могу получить единственный продукт, который мне нужен (есть в корзине). В таблице корзины есть внешний ключ product_id
Могу ли я сделать это через красноречие? или мне нужно использовать raw SQL и сделать это вручную?
РЕДАКТИРОВАТЬ v1: Дополнительная информация
таблица товаров имеет столбец store_id таблица корзины имеет столбец product_id , количество , site_id , user_id , id
$ cart Где переменная
$cartWhere['site_id'] =$current_site_id;
$cartWhere['user_id'] = $user_id;