Revise y edite scripts generados
Corrija las migraciones autogeneradas antes de aplicarlas.
Revise y edite scripts generados es una lección gratuita de Flask Academy en CoddyKit. Esta es la lección 4 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.
La generación automática no es perfecta
La generación automática es un excelente primer borrador, no una respuesta definitiva. Revise siempre el script antes de aplicarlo en cualquier entorno. 🔍
Abra el archivo de versiones
Cada script se encuentra en la carpeta versions. Ábralo y lea las funciones upgrade y downgrade como cualquier otro código.
El objeto op
Dentro de las funciones verá llamadas al objeto op, como op.create_table y op.add_column; cada una describe un cambio del esquema.
op.add_column("user", sa.Column("age", sa.Integer()))Lo que Alembic no detecta
La generación automática suele pasar por alto los renombrados y los interpreta como una eliminación seguida de una adición. Eso borraría silenciosamente los datos de la columna.
Corrija los renombrados manualmente
Cuando una columna realmente cambia de nombre, sustituya la eliminación y la adición por un único alter_column que conserve los datos.
op.alter_column("user", "name", new_column_name="full_name")Compruebe el downgrade
Confirme que downgrade revierte realmente upgrade. Un downgrade defectuoso le dejará bloqueado si alguna vez necesita volver atrás.
Preste atención a las columnas NOT NULL
Añadir una columna que no admite valores nulos a una tabla con filas provocará un error. Añádala primero como nullable, rellene los valores y después conviértala en required.
Añada usted mismo los pasos de datos
¿Necesita completar valores existentes? Añada una llamada op.execute con SQL sin procesar entre los pasos del esquema para migrar los datos existentes de forma segura.
op.execute("UPDATE user SET age = 0")Pruebe primero con una copia
Antes de tocar producción, ejecute la migración sobre una copia de los datos reales. Así detectará los fallos cuando aún sea barato corregirlos.
Un cambio por migración
Mantenga cada migración centrada en un único cambio lógico. Los scripts pequeños son mucho más fáciles de revisar, probar y revertir correctamente.
Confirme el script final
Después de editarlo y probarlo, haga commit del script. No cambie nunca una migración que ya se haya publicado en el historial de producción.
Comprobación rápida
Renombró una columna, pero la generación automática escribió una eliminación y una adición. ¿Cuál es el peligro?
Resumen
Aprendió a revisar scripts generados, corregir renombrados con alter_column, gestionar columnas que no admiten valores nulos y probar antes de publicar. 🎉
Aprende Python con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 30
- Lecciones
- 120
Preguntas frecuentes
¿La lección «Revise y edite scripts generados» es gratis?
Sí — el texto completo de «Revise y edite scripts generados» 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 «Revise y edite scripts generados»?
Corrija las migraciones autogeneradas antes de aplicarlas. 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 4 de 4.
¿Cuánto tiempo toma la lección «Revise y edite scripts generados»?
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