Skip to content
Advertisement

no idea why i get this error : Method IlluminateViewView::paginate does not exist?

i am trying to paginate this data :

if( $id_act!="" && $id_sous!="" && $id_secteur!="" ) // category and sub categroy and secteur selected 
    {
        $res = Entreprise::join('secteurs','secteurs.id','=','entreprises.secteurs_id')
                         ->where('secteurs_id','=',$id_secteur)
                         ->where('idact','=',$id_act)
                         ->where('idSousCat','=',$id_sous)
                         ->get(array('entreprises.RS','entreprises.secteurs_id','entreprises.Descp','secteurs.libelle'));                              
               return view('list_entreprise', ['resultas'=> $res , 'Secteurs'=> $Secteurs , 'Sous_Categories'=> $Sous_Categories ,  'Activities'=> $Activities ])->paginate(4);
               //dd($res);
    } 
    
    if( $id_act!="" && $id_sous!="" && $id_secteur=="") // category and sub categroy selected 
    {
        $res = Entreprise::join('secteurs','secteurs.id','=','entreprises.secteurs_id')
                         ->where('idact','=',$id_act)
                         ->where('idSousCat','=',$id_sous)
                         ->get(array('entreprises.RS','entreprises.secteurs_id','entreprises.Descp','secteurs.libelle'));                              
              return view('list_entreprise', ['resultas'=> $res , 'Secteurs'=> $Secteurs , 'Sous_Categories'=> $Sous_Categories , 'Activities'=> $Activities ])->paginate(4);
               //dd($res);
    }
    
    if( $id_act!="" && $id_sous=="" && $id_secteur=="") // only category selected 
    {
        $res = Entreprise::join('secteurs','secteurs.id','=','entreprises.secteurs_id')
                         ->where('idact','=',$id_act)
                         ->get(array('entreprises.RS','entreprises.secteurs_id','entreprises.Descp','secteurs.libelle'));                              
               return view('list_entreprise', ['resultas'=> $res , 'Secteurs'=> $Secteurs ,  'Activities'=> $Activities ])->paginate(4);
               //dd($res);
    }

but i keep getting this error :

Method IlluminateViewView::paginate does not exist.

Advertisement

Answer

paginate() should be called from the query, not from view(). So you should change get() to select() and call paginate(4) afterwards.

$res = Entreprise::join('secteurs','secteurs.id','=','entreprises.secteurs_id')
    ->where('idact','=',$id_act)
    ->select('entreprises.RS', 'entreprises.secteurs_id', 'entreprises.Descp', 'secteurs.libelle')
    ->paginate(4);

return view('list_entreprise', ['resultas'=> $res , 'Secteurs'=> $Secteurs ,  'Activities'=> $Activities ]);
User contributions licensed under: CC BY-SA
10 People found this is helpful
Advertisement