Maison > Questions et réponses > le corps du texte
Mon problème est que je souhaite paginer les résultats de la recherche, mais la pagination de Laravel est basée sur Elouqent et le générateur de requêtes de base de données. Je ne sais pas comment l'implémenter dans le contrôleur et la vue frontale.
Voici le code pour effectuer la recherche dans la base de données :
$article = Searchy::companys('title','body')->query($request->seek)->get();
S'il vous plaît, donnez-moi également quelques conseils.
ringa_lee2017-05-16 16:53:28
public function all(Request $request)
{
$user = User::latest()->get();
foreach ( $user as $key=>$value){
$company = Company::find($value->company_id);
$title = CompanyTitle::find($value->title_id);
$value['titleName'] = $title->title;
$value['companyName'] = $company->name;
}
$size = 8;
if (empty($request->page)){
$page = 1;
}
else{
$page = $request->page;
}
$users = $user->toArray();
$item = array_slice($users, ($page - 1) * $size,$size);
$arr =new LengthAwarePaginator($item, count($user), $size, $page, [
'path' => Paginator::resolveCurrentPath(), //注释2
'pageName' => 'page',
]);
return $arr;
}
C'est un blog que j'ai lu moi-même, qui a résolu le problème de l'absence d'instanciation et de l'absence de lien lors de l'écriture du code, le numéro de page n'était pas traité, ce qui n'est pas un bon code. . .
Adresse du blog Implémentation de la pagination manuelle Laravel
曾经蜡笔没有小新2017-05-16 16:53:28
Utilisez Illuminatepagniate ou lengthawarepagniate.
Ensuite, pour new Paginate(), vous devez vérifier les paramètres entrants dans le manuel
为情所困2017-05-16 16:53:28
Vous n'avez pas besoin d'obtenir, utilisez simplement la pagination directement après la requête