Как получить записи из смежной таблицы Laravel в один запрос
Подскажите пожалуйста, как мне сделать запрос в БД, через связь. Получается я ищу из модели Продукты записи - по названию, но также хочу при поиске "названия категории" - получать записи, относящиеся к ним.
$search - получаю поисковую строку из метода get
$products = Product::with('categories')->where(function($query) use ($search){
$query->where('title','LIKE',"%$search%")
->leftjoin('categories', 'category.title', 'LIKE',"%$search%");
})->get();
я может неправильно использую leftjoin , т.к. не уверен что это правильно
Ответы (1 шт):
Автор решения: Винсентэ Пуххини
→ Ссылка
Product::leftjoin('categories', 'categories.id', '=', 'products.category_id')
->where(function ($query) use ($search) {
$query->where('products.title','LIKE', "%$search%")
$query->orWhere('categories.title', 'LIKE', "%$search%");
})->get();
Как-то так