Introducción a FastAPI
FastAPI: La herramienta definitiva para el desarrollo web
¿Qué es y por qué usar FastAPI?
Instalación y configuración de FastAPI
Parámetros y Validación
Parámetros de ruta y consultas en FastAPI
¿Cómo validar datos en FastAPI con Pydantic?
Modelado de Datos en APIs con FastAPI
Validación y Gestión de Modelos en FastAPI
CRUD en FastAPI
¿Cómo conectar FastAPI a una base de datos usando SQLModel?
Creación y consulta de registros en SQLite con SQLModel y FastAPI
Crear un CRUD básico en FastAPI: Eliminar
Crear un CRUD básico en FastAPI: Actualizar
Arquitectura en FastAPI
Arquitectura de APIs escalables en FastAPI
Bases de Datos y Consultas
¿Cómo gestionar datos relacionados en SQLModel con FastAPI?
¿Cómo crear relaciones de muchos a muchos en SQLModel?
Relacionar Modelos de Datos en FastAPI: Implementación de Relaciones
Consultas avanzadas con SQLModel en FastAPI
Implementación de validación de datos en FastAPI con Pydantic
Middlewares
¿Cómo implementar paginación de datos en FastAPI?
Implementación y Uso de Middlewares en FastAPI
Unit Testing
Pruebas Unitarias en FastAPI: Configuración con Pytest y SQLAlchemy
¿Cómo implementar pruebas automáticas en endpoints de FastAPI?
Seguridad y Autenticación
Autenticación de API en FastAPI con HTTPBasicCredentials
Siguientes pasos en FastAPI
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Crear y gestionar endpoints es fundamental para un CRUD completo en FastAPI. Aquí se explora cómo implementar la funcionalidad de detalle, borrado y actualización de clientes en una API. A lo largo de este proceso, se observa cómo manejar la consulta, validación y actualización de datos en la base de datos de manera robusta.
Para obtener el detalle de un cliente, es esencial recibir el customer_id
y utilizar la sesión de la base de datos. Aquí se plantea una estructura básica:
app.get("/customer/{customer_id}")
para definir la URL, en la que {customer_id}
permite identificar el cliente específico.get
con el modelo y el customer_id
.HTTPException
con un código 404 Not Found
y un mensaje personalizado, como Customer does not exist
, asegurando claridad en la respuesta JSON.Esta estructura asegura que el cliente pueda consultarse de manera efectiva y que, en caso de no hallarse, el usuario reciba un mensaje adecuado.
Para implementar el endpoint de borrado, se reutiliza en gran medida el código de consulta:
delete
para el endpoint "/customer/{customer_id}"
, respetando la estructura previa.session.delete()
con el objeto correspondiente.session.commit()
para confirmar el cambio en la base de datos. La respuesta JSON debe incluir un mensaje como {"detail": "Customer deleted successfully"}
para asegurar al usuario que la eliminación se realizó con éxito.Este proceso garantiza que el cliente se elimine completamente de la base de datos solo si existe.
Para completar el CRUD, solo falta el endpoint de actualización. Este implica recibir un cuerpo (body
) con los datos actualizados:
put
o patch
para actualizar. Se recibe el customer_id
y el objeto con los nuevos datos, excluyendo el ID.session.commit()
para guardar los cambios.Este endpoint permite modificar los datos del cliente según lo necesite el usuario, proporcionando flexibilidad y manteniendo la integridad de los datos en la base de datos.
Aportes 13
Preguntas 0
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?