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-MigrateConé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 initDentro 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
- Por qué necesita migraciones, no create_all
- Inicialice y genere automáticamente una migración
- Aplique y revierta con upgrade
- Revise y edite scripts generados