sql >> Databáze >  >> RDS >> Mysql

Stránkování v Laravel 4 funguje na jednu stránku. ale nepracuje pro jiného

Vyhledejte formulář lépe pomocí metody GET, protože to usnadňuje vytvoření záložky/uložení adresy URL pro pozdější použití. V stránkování Laravel 4 existuje metoda, jak připojit řetězec dotazu. Řetězec vyhledávacích dotazů tedy můžeme ponechat na jiných stránkách.

Dokumenty:http://laravel.com/docs/pagination#appending-to -pagination-links

Můj kód:

Vyhledat formulář

<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>

Směrování

Route::get('lib/search', '[email protected]');

Ovladač

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

View / Blade At metoda zobrazení stránkování:

{{ $posts->appends(array('q' => $search))->links() }}

Můžeme tedy zachovat q=? querystring na jiných stránkách (např.:/lib/search?page=2&q=apple)



  1. Jak změnit výchozí řazení tabulky?

  2. Jak interpretujete plán vysvětlení dotazu?

  3. MySQL:vyberte * z tabulky, kde je možný col IN (null, ) bez OR

  4. Odevzdejte data v kontejneru mysql