Revise e edite scripts gerados
Corrija migrações geradas automaticamente antes de aplicá-las.
Revise e edite scripts gerados é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.
A geração automática não é perfeita
A geração automática é um ótimo primeiro rascunho, não uma resposta final. Sempre revise o script antes de aplicá-lo em qualquer lugar. 🔍
Abra o arquivo de versões
Cada script fica na pasta versions. Abra-o e leia as funções upgrade e downgrade como faria com qualquer outro código.
O objeto op
Dentro das funções, você verá chamadas no objeto op, como op.create_table e op.add_column, cada uma descrevendo uma alteração do esquema.
op.add_column("user", sa.Column("age", sa.Integer()))O que o Alembic não detecta
A geração automática frequentemente não detecta renomeações, tratando-as como uma remoção seguida de uma adição. Isso excluiria silenciosamente os dados da coluna.
Corrija renomeações manualmente
Quando uma coluna está realmente sendo renomeada, substitua a remoção e a adição por um único alter_column que preserve os dados.
op.alter_column("user", "name", new_column_name="full_name")Verifique o downgrade
Confirme que o downgrade realmente reverte o upgrade. Um downgrade com erro deixará você bloqueado se algum dia precisar reverter.
Tenha cuidado com colunas NOT NULL
Adicionar uma coluna que não aceita valores nulos a uma tabela com linhas causará uma falha. Adicione-a primeiro aceitando valores nulos, preencha os valores e depois torne-a obrigatória.
Adicione as etapas de dados você mesmo
Precisa preencher valores existentes? Adicione uma chamada op.execute com SQL bruto entre as etapas do esquema para migrar os dados existentes com segurança.
op.execute("UPDATE user SET age = 0")Teste primeiro em uma cópia
Antes de tocar na produção, execute a migração em uma cópia dos dados reais. Isso revela as falhas enquanto ainda é barato corrigi-las.
Uma alteração por migração
Mantenha cada migração concentrada em uma única alteração lógica. Scripts pequenos são muito mais fáceis de revisar, testar e reverter corretamente.
Faça o commit do script final
Depois de editar e testar, faça commit do script. Nunca altere uma migração que já tenha sido enviada para o histórico de produção.
Verificação rápida
Você renomeou uma coluna, mas a geração automática escreveu uma remoção e uma adição. Qual é o perigo?
Recapitulação
Você aprendeu a revisar scripts gerados, corrigir renomeações com alter_column, lidar com colunas que não aceitam valores nulos e testar antes da entrega. 🎉
Aprenda Python com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “Revise e edite scripts gerados” é grátis?
Sim — o texto completo de “Revise e edite scripts gerados” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.
O que vou aprender em “Revise e edite scripts gerados”?
Corrija migrações geradas automaticamente antes de aplicá-las. Você pratica Flask Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Flask Academy?
Nenhuma experiência prévia é necessária. Flask Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Revise e edite scripts gerados”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Flask Academy?
Sim. Cada aula de Flask Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Por que você precisa de migrações, não de create_all
- Inicialize e gere automaticamente uma migração
- Aplique e reverta com upgrade
- Revise e edite scripts gerados