{"id":26664,"date":"2021-04-28T15:25:00","date_gmt":"2021-04-28T12:25:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26664"},"modified":"2021-10-18T04:20:57","modified_gmt":"2021-10-18T01:20:57","slug":"como-usar-o-recurso-de-paginacao-do-laravel-no-site","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/como-usar-o-recurso-de-paginacao-do-laravel-no-site\/","title":{"rendered":"Como usar o recurso de pagina\u00e7\u00e3o do Laravel no site"},"content":{"rendered":"<p>Voc\u00ea est\u00e1 procurando integrar a pagina\u00e7\u00e3o embutida do Laravel em seu aplicativo? A pagina\u00e7\u00e3o \u00e9 sempre uma tarefa demorada. Se estivermos fazendo isso sem nenhuma biblioteca de terceiros, ent\u00e3o precisamos lidar com links de pagina\u00e7\u00e3o, registros totais, registros por p\u00e1gina, etc. Neste artigo, mostramos como usar a pagina\u00e7\u00e3o no Laravel que j\u00e1 vem com a instala\u00e7\u00e3o do Laravel.<\/p>\n<p>Em um site, frequentemente precisamos de pagina\u00e7\u00f5es. Para mostrar o grande conjunto de registros, usamos a pagina\u00e7\u00e3o. Ao usar a pagina\u00e7\u00e3o, dividimos um grande conjunto de dados em pequenas partes. Isso reduzir\u00e1 a carga em nosso servidor e, como resultado, o servidor responder\u00e1 rapidamente.<\/p>\n<h3>Como usar a pagina\u00e7\u00e3o do Laravel<\/h3>\n<p>Digamos que temos a tabela &#8216;produtos&#8217; em nosso banco de dados e esta tabela cont\u00e9m um grande conjunto de registros. Nosso objetivo \u00e9 mostrar 10 linhas por vez a partir desta tabela. E para os pr\u00f3ximos registros, usaremos os links de pagina\u00e7\u00e3o.<\/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=\"Como usar o recurso de pagina\u00e7\u00e3o do Laravel no site\" ><\/a><\/p>\n<p>Em nosso controlador, usamos o <code>paginate<\/code>m\u00e9todo e passamos o valor 10 como argumento.<\/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>O c\u00f3digo acima ir\u00e1 buscar 10 linhas da tabela do banco de dados e passar esses registros para a visualiza\u00e7\u00e3o.<\/p>\n<p>Para exibir esses registros na visualiza\u00e7\u00e3o, escrevemos o c\u00f3digo da seguinte maneira.<\/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>Aqui, o <code>links<\/code>m\u00e9todo retorna uma vis\u00e3o da pagina\u00e7\u00e3o que \u00e9 baseada na pagina\u00e7\u00e3o da tabela de bootstrap.<\/p>\n<p>O Laravel tamb\u00e9m nos permite usar consultas paginadas do Eloquent ao inv\u00e9s do construtor de consultas.<\/p>\n<pre><code>$products = AppProduct::paginate(10);<\/code><\/pre>\n<h3>Passe par\u00e2metros extras para links de pagina\u00e7\u00e3o<\/h3>\n<p>Normalmente aplicamos pagina\u00e7\u00e3o com as tabelas HTML. Junto com a lista de registros da tabela, fornecemos o campo de pesquisa para filtrar os registros. Para persistir os filtros de pesquisa, devemos passar a string de pesquisa em links de pagina\u00e7\u00e3o como abaixo.<\/p>\n<p><a href=\"http:\/\/your_site_domain\/products?s=test&#038;page=1\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">http: \/\/ YOUR_SITE_DOMAIN \/ products? s = test &#038; page = 1<\/a><\/p>\n<p>Para conseguir isso, precisamos passar a string de pesquisa para visualizar a partir do controlador.<\/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>Em seguida, para exibir links de pagina\u00e7\u00e3o, modificamos nosso c\u00f3digo na visualiza\u00e7\u00e3o da seguinte maneira.<\/p>\n<pre><code>{{ $products-&gt;appends(['s' =&gt; $products-&gt;search])-&gt;links() }}<\/code><\/pre>\n<p><code>appends<\/code> m\u00e9todo adiciona string de consulta aos links de pagina\u00e7\u00e3o.<\/p>\n<p>Esperamos que voc\u00ea entenda como fazer a pagina\u00e7\u00e3o do Laravel em seu aplicativo. Se voc\u00ea tiver alguma d\u00favida ou sugest\u00e3o, por favor, deixe um coment\u00e1rio abaixo.<\/p>\n<h4>Artigos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-usar-o-recurso-de-conexoes-multiplas-de-banco-de-dados-do-laravel-em-um-site\/\" title=\"Como usar o recurso de conex\u00f5es m\u00faltiplas de banco de dados do Laravel em um site\" >Como usar o recurso de conex\u00f5es m\u00faltiplas de banco de dados do Laravel em um site<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/crie-um-site-multilingue-em-php-usando-o-laravel-framework\/\" title=\"Crie um site multil\u00edngue em PHP usando o Laravel Framework\" >Crie um site multil\u00edngue em PHP usando o Laravel Framework<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-instalar-e-usar-o-ckeditor-no-laravel\/\" title=\"Como instalar e usar o CKEditor no Laravel\" >Como instalar e usar o CKEditor no Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quer usar a pagina\u00e7\u00e3o Laravel embutida em seu site? O Laravel empacotou este recurso no n\u00facleo. N\u00e3o precisamos instalar nenhuma terceira biblioteca.<\/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":[502],"tags":[848],"class_list":["post-26664","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26664","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=26664"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26664\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21749"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=26664"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=26664"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=26664"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}