10 - Criando Rotas CRUD para Gerenciamento de Tarefas em FastAPI
01 - Qual o papel da classe 'TodoState' em nosso código?
02 - Qual o significado da relação `user: Mapped[User] = relationship(...)` em nosso modelo?
03 - Qual o significado do parâmetro de consulta `state: str | None = None` no endpoint de busca?
04 - Qual a função do `FuzzyChoice` no Factory Boy?
05 - Qual a função da classe `Meta` no Factory Boy?
06 - Quando chamamos "TodoFactory.create_batch" o que estamos fazendo?
07 - Qual a função do `session.add_all` nos testes de todo?
08 - Qual a função do `exclude_unset=True` no código abaixo?
@router.patch('/{todo_id}', response_model=TodoPublic)
def patch_todo(
todo_id: int, session: Session, user: CurrentUser, todo: TodoUpdate
):
# ...
for key, value in todo.model_dump(exclude_unset=True).items():
setattr(db_todo, key, value)
09 - No schema "TodoUpdate" por que todos os valores são opcionais?
class TodoUpdate(BaseModel):
title: str | None = None
description: str | None = None
state: TodoState | None = None
10 - O que a querystring "?title=Test todo 1" quer dizer?
response = client.get(
'/todos/?title=Test todo 1',
headers={'Authorization': f'Bearer {token}'},
)