- Editar modelo para las pruebas.
- Generar un nuevo endpoint.
- Instalación de fastapi-versioning.
- Agregar versionado en main.py
- Generar la versión superior del endpoint anterior y marcar como deprecado el anterior.
- Definir ruta del fichero de configuración de los logs en el settings.
- Añadir carga de la configuración de logs en main.py.
- Usar los logs importando
logging
y registrar de la mejor manera posible toda invocación a nuestros endpoints.
- Instalación de pydantic-settings para las constantes del proyecto
- Mover a models/ los modelos
- Mover a routers/ los endpoints y agruparlos por tipo
- Generar settings para las constantes del proyecto
- Crear .env y .secrets para las constantes públicas y privadas
- Adaptar código en main.py
- Nuevo comando para ejecutar el proyecto:
python src/run.py
- Instalación de beanie (ODM [object-document mapper] basado en pydantic).
- Crear modelos para la validación de request y response de los endpoints.
- Actualizar endpoints con los modelos.
- Eliminar get_db, no será necesario gracias a beanie.
- Instalación de "motor" (driver para conexiones a mongo de manera asíncrona).
- Creación de los endpoints GET /posts y POST /posts
- Creación de una instancia del driver, mongo_db.
- Creación una función para inyectar el driver a base de datos en cada endpoint.
- Añadir dos eventos a la API, que mantendrá el cliente de mongo abierto y tras morir el servidor matará el cliente.
- Probar en http://localhost:8000/docs
Realizar la instalación de dependencias
pip install -r requirements.txt
Ejecutar servidor
uvicorn src.main:app --reload
Probar endpoints