Le formulaire de recherche est plus efficace en utilisant la méthode GET, car il est facile de marquer/enregistrer l'URL pour une utilisation ultérieure. Dans Pagination de Laravel 4, il existe une méthode pour ajouter la chaîne de requête. Ainsi, nous pouvons conserver la chaîne de requête de recherche dans d'autres pages.
Documents :http://laravel.com/docs/pagination#appending-to -pagination-links
Mon code :
Formulaire de recherche
<form method="get" action="{{{ URL::to('lib/search') }}}">
<input class="input-xxlarge" name="q" type="text" placeholder="Search...">
<div class="control-group">
<div class="controls">
<input type="submit" class="btn" id="submit" value="Submit" />
</div>
</div>
Routage
Route::get('lib/search', '[email protected]');
Contrôleur
public function getSearch()
{
$search = Input::get('q');
$posts = $this->post->where('title', 'like', '%'.$search.'%')->paginate(10);
return View::make('site/libraries/list', compact('posts', 'search'));
}
Vue / Lame À la méthode pour afficher la pagination :
{{ $posts->appends(array('q' => $search))->links() }}
Nous pouvons donc conserver le q=? chaîne de requête dans d'autres pages (ex :/lib/search?page=2&q=apple)