Filtrar pelo nome da Marca
[Finalizado Pelo Aluno]
Como fasso para filtrar a pesquisar pelo nome da marca?
Pelo brand_id já está funcionando, mas não sei como implementar pelo nome,
Segue a função do Plane.php
public function search($keySearch, $totalPage)
{
return $this
->where('id', $keySearch)
->orWhere('qty_passengers', $keySearch)
->orWhere('class', $keySearch)
->orWhere('brand_id', 'LIKE', "%{$keySearch}%")
->paginate($totalPage);
}
Olá, Marcelo!
Tudo bem?
Neste caso, a forma mais simples é combinar essa query com um JOIN, relacionando com a marca também.
Existem outras formas, mas, essa é uma das mais fáceis de aplicar:
public function search($keySearch, $totalPage)
{
return $this->where('planes.id', $keySearch)
->join('brands', 'brands.id', '=', 'planes.brand_id')
->orWhere('planes.qty_passengers', $keySearch)
->orWhere('planes.class', $keySearch)
->orWhere('brands.name', 'LIKE', "%{$keySearch}%")
->select('planes.id', 'planes.name', 'planes.class', 'planes.qty_passengers', 'brands.id', 'brands.name')
->paginate($totalPage);
}
Muito bom deu certo, tive que comentara alinha abaixo para funcionar.
//->select('planes.id', 'planes.name', 'planes.class', 'planes.qty_passengers', 'brands.id', 'brands.name')
Muito obrigado.
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!