{"id":26727,"date":"2021-04-28T15:54:00","date_gmt":"2021-04-28T12:54:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26727"},"modified":"2021-10-18T03:54:00","modified_gmt":"2021-10-18T00:54:00","slug":"jak-korzystac-z-wbudowanej-funkcji-stronicowania-laravel-na-stronie-internetowej","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pl\/jak-korzystac-z-wbudowanej-funkcji-stronicowania-laravel-na-stronie-internetowej\/","title":{"rendered":"Jak korzysta\u0107 z wbudowanej funkcji stronicowania Laravel na stronie internetowej?"},"content":{"rendered":"<p>Czy chcesz zintegrowa\u0107 wbudowan\u0105 paginacj\u0119 Laravela w swojej aplikacji? Paginacja to zawsze d\u0142ugie zadanie. Je\u015bli robimy to bez \u017cadnej biblioteki innej firmy, musimy obs\u0142u\u017cy\u0107 linki do stronicowania, ca\u0142kowit\u0105 liczb\u0119 rekord\u00f3w, rekordy na stron\u0119 itp. W tym artykule pokazujemy, jak korzysta\u0107 z paginacji w Laravelu, kt\u00f3ry jest ju\u017c do\u0142\u0105czony do instalacji Laravela.<\/p>\n<p>Na stronie internetowej cz\u0119sto potrzebujemy paginacji. Do pokazania du\u017cego zestawu rekord\u00f3w u\u017cywamy paginacji. U\u017cywaj\u0105c paginacji, dzielimy du\u017cy zestaw danych na ma\u0142e cz\u0119\u015bci. Zmniejszy to obci\u0105\u017cenie naszego serwera, dzi\u0119ki czemu serwer szybko reaguje.<\/p>\n<h3>Jak korzysta\u0107 z paginacji Laravel<\/h3>\n<p>Za\u0142\u00f3\u017cmy, \u017ce w naszej bazie danych mamy tabel\u0119 \u201eproducts&quot;, kt\u00f3ra zawiera du\u017cy zestaw rekord\u00f3w. Naszym celem jest jednoczesne pokazanie 10 wierszy z tej tabeli. A dla kolejnych rekord\u00f3w u\u017cyjemy link\u00f3w stronicowania.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20864-60823461ae4f2.png\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20864-60823461ae4f2.png\" alt=\"Jak korzysta\u0107 z wbudowanej funkcji stronicowania Laravel na stronie internetowej?\" ><\/a><\/p>\n<p>W naszym kontrolerze u\u017cywamy <code>paginate<\/code>metody i przekazujemy warto\u015b\u0107 10 jako argument.<\/p>\n<pre><code>public function index()\n{\n\u00a0\u00a0\u00a0\u00a0$products = DB::table('products')-&gt;paginate(10);\n\u00a0\u00a0\u00a0\u00a0return view('products.index', ['products' =&gt; $products]);\n}<\/code><\/pre>\n<p>Powy\u017cszy kod pobierze 10 wierszy z tabeli bazy danych i przeka\u017ce te rekordy do widoku.<\/p>\n<p>Aby wy\u015bwietli\u0107 te rekordy w widoku, piszemy kod w nast\u0119puj\u0105cy spos\u00f3b.<\/p>\n<pre><code>&lt;table class=\"table\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;thead&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Id&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Name&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th&gt;Description&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/thead&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;tbody&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0@foreach($products as $p)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;{{ $p-&gt;id }}&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;{{ $p-&gt;name }}&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;{{ $p-&gt;description }}&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0@endforeach\n\u00a0\u00a0\u00a0\u00a0&lt;\/tbody&gt;\n&lt;\/table&gt;\n\u00a0\n{{ $products-&gt;links() }}<\/code><\/pre>\n<p>Tutaj <code>links<\/code>metoda zwraca widok stronicowania, kt\u00f3ry opiera si\u0119 na paginacji tabeli bootstrap.<\/p>\n<p>Laravel pozwala r\u00f3wnie\u017c na u\u017cywanie stronicowanych zapyta\u0144 Eloquent zamiast kreatora zapyta\u0144.<\/p>\n<pre><code>$products = AppProduct::paginate(10);<\/code><\/pre>\n<h3>Przeka\u017c dodatkowe parametry do stronicowania link\u00f3w<\/h3>\n<p>Zwykle stosujemy paginacj\u0119 z tabelami HTML. Wraz z tabel\u0105 listy rekord\u00f3w podajemy pole wyszukiwania do filtrowania rekord\u00f3w. Aby zachowa\u0107 filtry wyszukiwania, powinni\u015bmy przekaza\u0107 ci\u0105g wyszukiwania w linkach stronicowanych, jak poni\u017cej.<\/p>\n<p><a href=\"http:\/\/your_site_domain\/products?s=test&#038;page=1\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">http:\/\/TWOJA_WITRYNA_DOMAIN\/products?s=test&#038;page=1<\/a><\/p>\n<p>Aby to osi\u0105gn\u0105\u0107, musimy przekaza\u0107 ci\u0105g wyszukiwania do widoku z kontrolera.<\/p>\n<pre><code>$products = DB::table('products')-&gt;paginate(10);\n$products-&gt;search = 'YOUR_SEARCH_STRING';\nreturn view('products.index', ['products' =&gt; $products]);<\/code><\/pre>\n<p>Nast\u0119pnie, aby wy\u015bwietli\u0107 linki stronicowania, modyfikujemy nasz kod w widoku w nast\u0119puj\u0105cy spos\u00f3b.<\/p>\n<pre><code>{{ $products-&gt;appends(['s' =&gt; $products-&gt;search])-&gt;links() }}<\/code><\/pre>\n<p><code>appends<\/code> Metoda dodaj ci\u0105g zapytania do link\u00f3w stronicowania.<\/p>\n<p>Mamy nadziej\u0119, \u017ce rozumiesz, w jaki spos\u00f3b mo\u017cna stronicowa\u0107 Laravela w swojej aplikacji. Je\u015bli masz jakie\u015b pytania lub sugestie, zostaw komentarz poni\u017cej.<\/p>\n<h4>Powi\u0105zane artyku\u0142y<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pl\/jak-korzystac-z-funkcji-laravel-wielu-polaczen-z-baza-danych-na-stronie-internetowej\/\" title=\"Jak korzysta\u0107 z funkcji wielu po\u0142\u0105cze\u0144 z baz\u0105 danych Laravel na stronie internetowej?\" >Jak korzysta\u0107 z funkcji wielu po\u0142\u0105cze\u0144 z baz\u0105 danych Laravel na stronie internetowej?<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pl\/tworz-wielojezyczna-strone-internetowa-w-php-za-pomoca-laravel-framework\/\" title=\"Stw\u00f3rz wieloj\u0119zyczn\u0105 stron\u0119 internetow\u0105 w PHP za pomoc\u0105 Laravel Framework\" >Stw\u00f3rz wieloj\u0119zyczn\u0105 stron\u0119 internetow\u0105 w PHP za pomoc\u0105 Laravel Framework<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pl\/jak-zainstalowac-i-uzywac-ckeditor-w-laravel\/\" title=\"Jak zainstalowa\u0107 i u\u017cywa\u0107 CKEditor w Laravel?\" >Jak zainstalowa\u0107 i u\u017cywa\u0107 CKEditor w Laravel?<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chcesz korzysta\u0107 z wbudowanej paginacji Laravela na swojej stronie? Laravel do\u0142\u0105czy\u0142 t\u0119 funkcj\u0119 do rdzenia. Nie musimy instalowa\u0107 \u017cadnej trzeciej biblioteki.<\/p>\n","protected":false},"author":1,"featured_media":21749,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[501],"tags":[847],"class_list":["post-26727","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts\/26727","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/comments?post=26727"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/posts\/26727\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/media\/21749"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/media?parent=26727"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/categories?post=26727"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pl\/wp-json\/wp\/v2\/tags?post=26727"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}