2015-11-23 4 views
2

Я хотел найти записи после получения отношений. Я пробовал с коллегами Laravel. не работает.Laravel ajax поиск с отношениями

public function search($key){ 
    $products = Product::with('unit', 'category', 'brand')->get(); 
    $allproducts = collect($products); 
    $result = $allproducts->search($key); 

Здесь я хочу, чтобы поиск выполнялся также на основе категории и бренда. Если я не могу вас собрать, то как это сделать стандартным образом.

+0

вы хотите найти идентификатор или ключевое слово? –

+0

Я хочу искать с ключевым словом –

+0

и вы хотите искать внутри красноречивой коллекции или запрос тоже хорош? –

ответ

1

Я думаю, что использование запроса - лучший подход, так как вам не нужно загружать все товары-категории-etc из базы данных, а затем попытаться найти соответствующие.

Пример запроса

Product::where('product_name', 'LIKE', "%$keyword%") 
     ->orWhereHas('category', function ($q) use ($keyword) { 
      $q->where('category_name', 'LIKE', "%$keyword%"); 
     //everything else you need to check 
     })->get(); 
Смежные вопросы