145 votes

Les liens de la pagination de Laravel n'incluent pas les autres paramètres GET

J'utilise Eloquent avec la classe Pagination de Laravel 4.

Problème : Lorsqu'il y a des paramètres GET dans l'URL, par exemple : http://site.com/users?gender=female&body=hot les liens de pagination produits ne contiennent que le page et rien d'autre.

Modèle de lame

{{ $users->link() }}

Il y a un ->append() pour cela, mais lorsque nous ne savons pas combien de paramètres GET il y a, comment utiliser la fonction append() d'inclure les autres paramètres GET dans les liens paginés sans tout un morceau de if qui perturbe notre modèle de lame ?

29voto

Bald Points 310

Non append() pero appends() Donc, la bonne réponse est :

{!! $records->appends(Input::except('page'))->links() !!}

11voto

ecairol Points 211

LARAVEL 5

La vue doit contenir quelque chose comme :

{!! $myItems->appends(Input::except('page'))->render() !!}

5voto

Utilisez cette construction, pour garder tous les paramètres d'entrée mais la page

{!! $myItems->appends(Request::capture()->except('page'))->render() !!}

Pourquoi ?

1) vous enlevez tout ce qui a contribué à la demande comme ça

  $request->request->add(['variable' => 123]);

2) vous n'avez pas besoin de $request comme paramètre d'entrée pour la fonction

3) vous excluez la "page".

PS) et cela fonctionne pour Laravel 5.1

4voto

Siva Ganesh Points 862

Inclure ceci dans votre vision Page

 $users->appends(Input::except('page'))

4voto

Mostafa Asadi Points 161

Pour qui un dans laravel 5 ou supérieur en lame :

{{ $table->appends(['id' => $something ])->links() }}

vous pouvez obtenir l'élément passé avec

$passed_item=$request->id;

le tester avec

dd($passed_item);

vous devez obtenir la valeur $something

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X