Member-only story
WebAPI con FastAPI
Versión 4: migraciones con Alembic
Continuamos con el ejemplo de una WebAPI completa con FastAPI.
En la versión 1 vimos como podemos crear rápidamente una API, con un solo archivo.
En la versión 2 refactorizamos el código en capas, para facilitar futuros cambios.
En la versión 3 integramos una base de datos para almacenar los contactos.
En este artículo veremos cómo usar Alembic para mantener la estructura de la base de datos en forma repetible. El código para todas las versiones está en Github: https://github.com/mcgilbertus/contacts-fapi.git
Alembic
Alembic (https://alembic.sqlalchemy.org/en/latest/) es parte del proyecto SQLAlchemy; es una librería que permite administrar migraciones de estructura de una base de datos usando el motor de SQLAlchemy.
Una migración es un script que permite pasar de un esquema a otro en una base de datos
Es muy recomendable trabajar con scripts para que el proceso sea repetible. Cada vez que hacemos algún cambio en el esquema -agregamos o quitamos entidades, propiedades, restricciones, etc- tenemos que crear una migración que permita pasar del estado anterior al cambio al estado posterior al cambio. Esa migración puede después aplicarse en cualquier…






