0Pricing
Flask Academy · Lección

Inicialice y genere automáticamente una migración

Ejecute flask db init y migrate.

Inicialice y genere automáticamente una migración es una lección gratuita de Flask Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Flask Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Flask Academy incluye 4 lecciones en total.

Instale Flask-Migrate

Primero añada el paquete al proyecto. Flask-Migrate incorpora Alembic y un conjunto de comandos flask db muy prácticos. 📦

pip install Flask-Migrate

Conéctelo a la aplicación

Cree un objeto Migrate y vincúlelo a su aplicación y a la base de datos. Esa única línea activa todo el grupo de comandos flask db.

from flask_migrate import Migrate
migrate = Migrate(app, db)

Inicialice el repositorio

Ejecute flask db init una vez por proyecto. Este comando crea la estructura de una carpeta de migraciones que contendrá cada script de versión que genere.

flask db init

Dentro de la carpeta

La nueva carpeta contiene un archivo alembic.ini, un archivo env.py y un directorio versions vacío donde se guardarán los futuros archivos de migración.

Genere una migración automáticamente

flask db migrate compara sus modelos con el esquema activo y escribe un script que describe exactamente qué cambió.

flask db migrate -m "create users table"

El mensaje de -m

Proporcione siempre un mensaje claro con -m. Este etiqueta la migración para que, más adelante, su equipo pueda leer el historial como un registro de cambios.

Un nuevo archivo de versiones

Cada comando migrate crea un archivo nuevo en versions, cuyo nombre incluye un id de revisión aleatorio y el slug de su mensaje.

Los modelos deben importarse

La generación automática solo detecta los modelos que realmente se han importado cuando se ejecuta el comando. Si faltan imports, también faltarán tablas en el script.

Detecta las diferencias

Alembic compara los metadatos de los modelos con la base de datos. Detecta automáticamente tablas nuevas, columnas añadidas y muchas restricciones modificadas.

Migrate no aplica los cambios

Punto clave: migrate solo escribe el script. La base de datos permanece intacta hasta que lo aplique realmente en la próxima lección.

Confirme la migración

Trate los archivos de migración como código y haga commit de ellos en git. Sus compañeros podrán reproducir exactamente los mismos cambios a partir del historial de versiones.

Comprobación rápida

Ejecutó flask db migrate y apareció un archivo nuevo. ¿Cambiaron sus tablas?

Resumen

Conectó Migrate, ejecutó flask db init y generó automáticamente un script con flask db migrate, listo para aplicarse. 🎉

Preguntas frecuentes

¿La lección «Inicialice y genere automáticamente una migración» es gratis?

Sí — el texto completo de «Inicialice y genere automáticamente una migración» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Flask Academy, actualiza a CoddyKit PRO. El curso de Flask Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Inicialice y genere automáticamente una migración»?

Ejecute flask db init y migrate. Practicas Flask Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Flask Academy?

No se requiere experiencia previa. Flask Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Inicialice y genere automáticamente una migración»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Flask Academy?

Sí. Cada lección de Flask Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Por qué necesita migraciones, no create_all
  2. Inicialice y genere automáticamente una migración
  3. Aplique y revierta con upgrade
  4. Revise y edite scripts generados
← Volver a Flask Academy