Home > front end >  Error Call to a member function paginate() on string
Error Call to a member function paginate() on string

Time:06-08

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'));
}
  • Related