✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Jak korzystać z wbudowanej funkcji stronicowania Laravel na stronie internetowej?

91

Czy chcesz zintegrować wbudowaną paginację Laravela w swojej aplikacji? Paginacja to zawsze długie zadanie. Jeśli robimy to bez żadnej biblioteki innej firmy, musimy obsłużyć linki do stronicowania, całkowitą liczbę rekordów, rekordy na stronę itp. W tym artykule pokazujemy, jak korzystać z paginacji w Laravelu, który jest już dołączony do instalacji Laravela.

Na stronie internetowej często potrzebujemy paginacji. Do pokazania dużego zestawu rekordów używamy paginacji. Używając paginacji, dzielimy duży zestaw danych na małe części. Zmniejszy to obciążenie naszego serwera, dzięki czemu serwer szybko reaguje.

Jak korzystać z paginacji Laravel

Załóżmy, że w naszej bazie danych mamy tabelę „products", która zawiera duży zestaw rekordów. Naszym celem jest jednoczesne pokazanie 10 wierszy z tej tabeli. A dla kolejnych rekordów użyjemy linków stronicowania.

Jak korzystać z wbudowanej funkcji stronicowania Laravel na stronie internetowej?

W naszym kontrolerze używamy paginatemetody i przekazujemy wartość 10 jako argument.

public function index()
{
    $products = DB::table('products')->paginate(10);
    return view('products.index', ['products' => $products]);
}

Powyższy kod pobierze 10 wierszy z tabeli bazy danych i przekaże te rekordy do widoku.

Aby wyświetlić te rekordy w widoku, piszemy kod w następujący sposób.

<table class="table">
    <thead>
        <tr>
            <th>Id</th>
            <th>Name</th>
            <th>Description</th>
        </tr>
    </thead>
    <tbody>
        @foreach($products as $p)
            <tr>
                <td>{{ $p->id }}</td>
                <td>{{ $p->name }}</td>
                <td>{{ $p->description }}</td>
            </tr>
        @endforeach
    </tbody>
</table>
 
{{ $products->links() }}

Tutaj linksmetoda zwraca widok stronicowania, który opiera się na paginacji tabeli bootstrap.

Laravel pozwala również na używanie stronicowanych zapytań Eloquent zamiast kreatora zapytań.

$products = AppProduct::paginate(10);

Przekaż dodatkowe parametry do stronicowania linków

Zwykle stosujemy paginację z tabelami HTML. Wraz z tabelą listy rekordów podajemy pole wyszukiwania do filtrowania rekordów. Aby zachować filtry wyszukiwania, powinniśmy przekazać ciąg wyszukiwania w linkach stronicowanych, jak poniżej.

http://TWOJA_WITRYNA_DOMAIN/products?s=test&page=1

Aby to osiągnąć, musimy przekazać ciąg wyszukiwania do widoku z kontrolera.

$products = DB::table('products')->paginate(10);
$products->search = 'YOUR_SEARCH_STRING';
return view('products.index', ['products' => $products]);

Następnie, aby wyświetlić linki stronicowania, modyfikujemy nasz kod w widoku w następujący sposób.

{{ $products->appends(['s' => $products->search])->links() }}

appends Metoda dodaj ciąg zapytania do linków stronicowania.

Mamy nadzieję, że rozumiesz, w jaki sposób można stronicować Laravela w swojej aplikacji. Jeśli masz jakieś pytania lub sugestie, zostaw komentarz poniżej.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów