Resultados com Laravel paginate withQueryString

Posted on: October 01, 2025 06:00 PM

Posted by: Renato

Categories: Laravel

Views: 54

Boa! Esse detalhe é realmente importante em Laravel quando trabalhamos com paginação e filtros. 🚀

O problema

Quando você faz uma consulta paginada com filtros vindos da URL (query string), como por exemplo:

/posts?category=php&author=renato

Se você usa apenas:

$posts = Post::paginate(10);

O Laravel gera os links de paginação assim:

/posts?page=2

👉 Repare que os filtros (category, author) se perdem.
Isso significa que ao clicar na próxima página, os resultados não estarão mais filtrados.


A solução

Ao adicionar o método withQueryString():

$posts = Post::query()
    ->where('category', 'php')
    ->where('author', 'renato')
    ->paginate(10)
    ->withQueryString();

Agora os links de paginação serão gerados assim:

/posts?category=php&author=renato&page=2

✅ Ou seja, os filtros permanecem enquanto você navega entre as páginas.


Diferença para appends()

O Laravel também tem o método appends(), que faz algo semelhante, mas você precisa passar manualmente os parâmetros:

$posts->appends(request()->query());

Enquanto withQueryString() já usa a query string atual automaticamente.


Quando usar

  • Sempre que você tiver filtros via GET (buscas, categorias, ordenação).

  • Para garantir consistência na experiência do usuário.

  • Para evitar bugs sutis em produção, onde o usuário pensa que está navegando em uma lista filtrada mas perde os filtros ao mudar de página.


👉 Resumindo:

  • paginate() sozinho não preserva filtros.

  • paginate()->withQueryString() mantém todos os filtros da URL ativos.

  • É essencial em listas filtráveis e paginadas.

$modeller->withQueryString()->paginate(18);

https://x.com/epmadushanka/status/1971082486022307965

 


2

Share

Donate to Site


About Author

Renato

Developer

Add a Comment

Blog Search


Categories

Laravel (227) PHP (151) linux (124) Variados (110) Dicas (58) ubuntu (58) developer (48) postgresql (45) database (44) sql (42) Docker (32) front-end (31) mysql (31) devops (26) webdev (24) programming (23) aws (19) tecnologia (19) eloquent (19) dba (18) OUTROS (17) backend (16) laravelphp (16) debian (12) dev (12) reactjs (10) 100DaysOfCode (10) git (10) react (10) nginx (9) inteligencia-artificial (9) PHP Swoole (9) node (9) javascript (9) linux-tools (8) Architecture (8) vue (7) github (7) ciencia (7) vscode (6) nodejs (6) api (6) webservice (6) vim (6) jwt (6) arquitetura (6) windows (6) authentication (5) ia (5) reactnative (5) rest (5) DevSecOps (5) s3 (5) servers (5) apache (5) macox (5) mariadb (4) jenkins (4) Kubernetes (4) gitlab (4) opensource (4) autenticacao (4) shell (4) mongodb (4) angular (4) inteligenciadedados (4) Padrao de design (4) artigo (4) wsl (4) Swoole (4) lets-encrypt (4) query (4) Raspberry (4) angularjs (4) google (4) npm (4) openai (4) CMS (2) sail (3) script (3) performance (3) js (3) mysqli (3) Black Hat (3) RabbitMQ (3) educacao (3) intel (3) fedora (3) containers (3) json (3) authorization (3) phpswoole (3) ddd (3) blade (3) terminal (3) log (3) mac (3) web (2) jobs (3) websocket (3) ssh (3) bash (3) hardware (3) tests (3) macos (3) db (3) politica (3) iot (2) ffmpeg (2) combustivel (2) webhook (2) microservices (2) Curisidades (2) Solid (2) zsh (2) Go (2) BigLinux (2) POO (2) LazyVim (2) gource (2) Python (2) Oauth2 (2) android (2) unix (2) magento (2) artificialintelligence (2) security (2) bancodedados (2) tailwind (2) homeOffice (2) html (2) openswoole (2) ArchLinux (2) java (2) saude (1) seguranca (2) auth (2) cron (2) phpunit (2) kube (2) multiple_authen (2) policia (2) neovim (2) golang (2) noticias (2) livros (2) Transcribe (2) ElonMusk (2) redis (2) claude (2) maps (2) colors (2) Passport (2) JQuery (2) phpfpm (2) autorizacao (2) monitoring (2) laptop (2) gnome (2) powerbi (2) telefonia (2) nvm (2) imagick (2) federal (1) ruby (1) AppSec (1) orm (1) ArquiteturaDeSoftware (1) Passwordless (1) memcached (1) flow (1) compression (1) athena (1) front (1) wine (1) covid19 (0) services (1) phpjasper (1) models (1) kali-linux (1) geojson (1) yarn (1) picpay (1) Monolith (1) banco (1) PNPM (1) Desenvolvedor (1) Structurizr (1) symfony (1) presenter (1) lider (1) guard (1) tensorflow (1) bootstrap (1) nuance (1) historia (1) dropbox (1) traefik (1) bug (1) akitando (1) llm (1) htm (1) transformers (1) cavalotroia (1) odd (1) m1 (1) Error (1) cinnamon (1) repmgr (1) vicuna (1) coding (1) rust (1) markdown (1) JasperReports (1) Fibonacci (1) community (1) Samurai (1) payment (1) messaging (1) Jesus (1) flutter (1) Migration (1) workflow (1) cqrs (1) kitematic (1) geospacial (1) yeshua (1) data (1) sonarqube (1) Axios (1) pipelines (1) Mozilla (1) kvm (1) GitOps (1) sqlite (1) podcast (1) n8n (1) LaravelFilament (1) God (1) DesenvolvimentoProfissional (1) sw (1) bigtech (1) postgres (1) NoCookies (1) LeetCode (1) governancadedados (1) prf (1) nosql (1) Lideranca (1) Hackers (1) Bots (1) pytorch (1) nuxt (1) liquid (1) ec2 (1) transaction (1) c4 (1) rancher (1) algoritimo (1) Observability (1) Elasticsearch (1) translate (1) certbot (1) Oh My Zsh (1) ibm (1) escopos (1) usb (1) ckeditor (1) API_KEY_GOOGLE_MAPS (1) Manjaro (1) mapas (1) Fetch (1) collections (1) RustLang (1) matematica (1) Filament (1) compactar (1) paypal (1) microg (1) forcas armadas (1) militar (1) fullsta (1) smartphones (1) automacao (1) Monitor (1) zend (1) spaceship (1) PKCE (1) l2tp (1) Glacier (1) laraveloctane (1) Deus (1) binaural (1) gpt (1) bolsonaro (1) privacidade (1) linkedin (1) documentation (1) brain (1) adb (1) nvidia (1) host (1) ecommerce (1) c4-models (1) altadisponibilidade (1) octane (1) lucena (1) http (1) TypeScript (1) chatgpt (1) idiomas (1) eventdrive (1) uuid (1) restfull (1) aplicativo (1) optimization (1) apple (1) oracle (1) iode (1) ffaa (1) vpn (1) MeioAmbiente (1) firefox (1) composer (1) scheduling (1) Asahi (1) pendrive (1) microservice (1) front (1) cor (1) auth (1) modelagemdedados (1) k8s (1) gasolina (1) wsl2 (1) csv (1) soap (1) piada (1) KubeCon (1) zorin-os (1) spring-boot (1) backup (1) playwright (1) Deepin (1) storage (1) benchmark (1) networking (1) Swoole (1) biologia (1) node-red (1) LETSENCRYPT (1) Grunt (1) Diagramas (1) boot (1) haru (1) dracula (1) TrabalhoEmEquipe (1) Brasil (1) queue (1) agi (1) llama (1) hotfix (1) economia (1) transcription (1) cache (1) Amazon (1) October (1) lumen (1) Hyperf (1) replication (1) faceapp (1) vala (1) cloudstack (1) rpi (1) controllers (0) OOD (0)

New Articles



Get Latest Updates by Email