Skip to content

Instantly share code, notes, and snippets.

@cezarmezzalira
Created November 21, 2023 13:03
Show Gist options
  • Save cezarmezzalira/e79a6a8a62ce5e68e70f68ffc5298a7d to your computer and use it in GitHub Desktop.
Save cezarmezzalira/e79a6a8a62ce5e68e70f68ffc5298a7d to your computer and use it in GitHub Desktop.
RACE route files
from fastapi import APIRouter
from src.models.provas_model import Provas
from src.config.database import get_session
provas_router = APIRouter(prefix="/provas")
@provas_router.post("")
def cria_prova(prova: Provas):
with get_session() as session:
session.add(prova)
session.commit()
session.refresh(prova)
return prova
# resultados_routes.py
from fastapi import APIRouter
from sqlmodel import select
from src.config.database import get_session
from src.models.provas_model import Provas
from src.models.resultados_model import Resultados
resultados_router = APIRouter(prefix="/resultados")
@resultados_router.post("")
def cria_prova(resultado: Resultados):
with get_session() as session:
# Calcular a nota baseado nas questòes da prova
# Buscar a prova do banco de dados
statement = select(Provas).where(Provas.id == resultado.prova_id)
prova = session.exec(statement).first()
# se tiver prova, vai calcular a nota
resultado.nota = 10
session.add(resultado)
session.commit()
session.refresh(resultado)
return resultado
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment