I'm currently working on a search data filter and when I click it it's an error Call to a member function paginate() on string
Controller
public function index(Request $request){
if($request->has('search')){
$data = rekap::where('costumer','LIKE','%' .$request->search. '%'->paginate(5));
}else{
$data = rekap::paginate(5);
}
return view('rekap', compact('data'));
}
View
<form action="/rekap" method="GET">
<div >
<input type="text" placeholder="Cari..." name="search">
<button type="submit">Search</button>
</div>
</form>
{{ $data->links() }}
CodePudding user response:
change your return like this
if($request->has('search')){
$data = rekap::where('costumer','LIKE','%' .$request->search. '%')->paginate(5);
}else{
$data = rekap::paginate(5);
}
return view('blade name here')->with([
'data' => $data,
]);
CodePudding user response:
You can write it in single query
public function index(Request $request){
$data = rekap::when($request->filled('search'), function($q){
$q->where('costumer', 'LIKE', '%' . $request->input('search') . '%');
})
->paginate(5);
return view('rekap', compact('data'));
}