Files
fastapi/docs/pt/docs/tutorial/query-param-models.md
Motov Yurii 0d1f4d935b 🌐 Update translations for pt (update-all) (#14912)
* Update all

* 🎨 Auto format

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-13 14:48:53 +01:00

2.4 KiB

Modelos de Parâmetros de Consulta

Se você possui um grupo de parâmetros de consultas que são relacionados, você pode criar um modelo Pydantic para declará-los.

Isso permitiria que você reutilizasse o modelo em diversos lugares, e também declarasse validações e metadados de todos os parâmetros de uma única vez. 😎

/// note | Nota

Isso é suportado desde o FastAPI versão 0.115.0. 🤓

///

Parâmetros de Consulta com um Modelo Pydantic

Declare os parâmetros de consulta que você precisa em um modelo Pydantic, e então declare o parâmetro como Query:

{* ../../docs_src/query_param_models/tutorial001_an_py310.py hl[9:13,17] *}

O FastAPI extrairá os dados para cada campo dos parâmetros de consulta presentes na requisição, e fornecerá o modelo Pydantic que você definiu.

Verifique a Documentação

Você pode ver os parâmetros de consulta na IU da documentação em /docs:

Restrinja Parâmetros de Consulta Extras

Em alguns casos especiais (provavelmente não muito comuns), você queira restringir os parâmetros de consulta que deseja receber.

Você pode usar a configuração do modelo Pydantic para forbid qualquer campo extra:

{* ../../docs_src/query_param_models/tutorial002_an_py310.py hl[10] *}

Caso um cliente tente enviar alguns dados extras nos parâmetros de consulta, eles receberão um retorno de erro.

Por exemplo, se o cliente tentar enviar um parâmetro de consulta tool com o valor plumbus, como:

https://example.com/items/?limit=10&tool=plumbus

Eles receberão um retorno de erro informando-os que o parâmetro de consulta tool não é permitido:

{
    "detail": [
        {
            "type": "extra_forbidden",
            "loc": ["query", "tool"],
            "msg": "Extra inputs are not permitted",
            "input": "plumbus"
        }
    ]
}

Resumo

Você pode utilizar modelos Pydantic para declarar parâmetros de consulta no FastAPI. 😎

/// tip | Dica

Alerta de spoiler: você também pode utilizar modelos Pydantic para declarar cookies e cabeçalhos, mas você irá ler sobre isso mais a frente no tutorial. 🤫

///