Contenido del curso
FastAPI Path Operations
Validaciones con Pydantic
Autenticación en FastAPI
Conexión con bases de datos en FastAPI
- 19

SQLAlchemy: el ORM de FastAPI
01:01 min - 20

Instalación y configuración de SQLAlchemy
06:48 min - 21

Creación de modelos con SQLAlchemy
05:35 min - 22

Registro de datos con SQLAlchemy
03:19 min - 23

Consulta de datos con SQLAlchemy
07:25 min - 24

Modificación y eliminación de datos con SQLAlchemy
05:44 min - 25

SQLModel: el futuro ORM de FastAPI
01:59 min
Modularización
Despliegue de Aplicación en FastAPI
Próximos pasos
Bonus
Creación de esquemas con Pydantic
Resumen
FastAPI y la eficiencia en la creación de esquemas de datos con Pydantic son elementos clave en el desarrollo de aplicaciones modernas. Hablaremos de cómo estos recursos pueden simplificar y ordenar el trabajo al manejar parámetros y estructuras de datos.
¿Qué son los esquemas en FastAPI y cómo nos ayudan?
FastAPI es un framework moderno y rápido para la construcción de APIs con Python. Para estructurar los datos que nuestras aplicaciones manejarán, los esquemas son fundamentales. Pydantic, una biblioteca para validaciones de datos y configuraciones basadas en modelos de Python, entra en juego precisamente para facilitar esta tarea. Los esquemas actúan como plantillas para organizar la información y asegurar que los datos recibidos en nuestra API cumplen con el formato esperado.
¿Cómo se crea un esquema con Pydantic?
El proceso inicia con la importación de BaseModel de Pydantic en nuestro archivo de código. A continuación, creamos una clase que herede de BaseModel. Por ejemplo, si estamos trabajando con datos de películas, nuestra clase Movie contendrá atributos como id, title, overview, year, rating y category. Aquí un ejemplo simplificado:
from pydantic import BaseModel, Optional class Movie(BaseModel): id: Optional[int] = None title: string overview: string year: int rating: float category: string
Aquí, incluso contemplamos que el id sea opcional, para lo cual usamos la clase Optional importada de typing.
Incorporando el esquema en nuestros endpoints
Una vez definido el esquema de datos Movie, lo integramos en los métodos de nuestra API. En el caso del método POST, ahora podemos simplificar la recepción de datos:
@app.post("/movies/") async def create_movie(movie: Movie): # Lógica para añadir la película
De manera similar, para actualizar los datos de una película con un método PUT, solo requerimos el id y la instancia de Movie:
@app.put("/movies/{movie_id}") async def update_movie(movie_id: int, movie: Movie): # Lógica para actualizar la película con movie_id
Ventajas de usar esquemas con Pydantic
- Reducción de código: No necesitamos manejar cada campo de datos individualmente.
- Claridad: Tener un esquema claro facilita la comprensión del modelo de datos.
- Validación automática: Pydantic verifica que los datos recibidos se ajusten al esquema definido.
- Documentación: Al usar esquemas, FastAPI puede generar documentación interactiva que muestra los campos requeridos.
La utilización de esquemas con la librería Pydantic marca un punto de inflexión en la eficiencia de desarrollo. Gracias a FastAPI y su integración estrecha con Pydantic, podemos decir adiós a las largas funciones con innumerables parámetros, y dar la bienvenida a un código más limpio y mantenible. En la próxima clase, expandiremos nuestro entendimiento adentrándonos en las validaciones de datos, un complemento perfecto a lo aprendido hoy. No te la pierdas, porque cada paso que damos nos acerca a construir APIs más robustas y profesionales.