0Pricing
Flask Academy · Aula

Inicialize e gere automaticamente uma migração

Execute flask db init e migrate.

Inicialize e gere automaticamente uma migração é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 2 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.

Instale o Flask-Migrate

Primeiro, adicione o pacote ao seu projeto. O Flask-Migrate traz o Alembic e um conjunto de comandos úteis do flask db. 📦

pip install Flask-Migrate

Conecte ao aplicativo

Crie um objeto Migrate e associe-o ao aplicativo e ao banco de dados. Essa única linha ativa todo o grupo de comandos flask db.

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

Inicialize o repositório

Execute flask db init uma vez por projeto. Ele cria a estrutura de uma pasta de migrações que armazenará cada script de versão gerado.

flask db init

Dentro da pasta

A nova pasta contém um alembic.ini, um env.py e um diretório versions vazio, onde ficarão os futuros arquivos de migração.

Gere uma migração automaticamente

flask db migrate compara seus modelos com o esquema atual e grava um script que descreve exatamente o que mudou.

flask db migrate -m "create users table"

A mensagem -m

Sempre passe uma mensagem clara com -m. Ela identifica a migração para que sua equipe possa consultar o histórico como um registro de alterações mais tarde.

Um novo arquivo de versões

Cada comando migrate cria um novo arquivo em versions, nomeado com um identificador de revisão aleatório seguido do identificador da sua mensagem.

Os modelos precisam ser importados

A geração automática só enxerga os modelos que foram realmente importados quando o comando é executado. Importações ausentes significam tabelas ausentes no script.

Ele detecta diferenças

O Alembic compara os metadados dos modelos com o banco de dados. Ele detecta automaticamente novas tabelas, colunas adicionadas e muitas restrições alteradas.

Migrate não aplica alterações

Ponto importante: migrate apenas grava o script. Seu banco de dados continua intacto até que você realmente o aplique na próxima lição.

Faça o commit da migração

Trate os arquivos de migração como código e faça commit deles no git. Os colegas de equipe reproduzem exatamente as mesmas alterações a partir do seu histórico de versões.

Verificação rápida

Você executou flask db migrate e viu um novo arquivo aparecer. Suas tabelas foram alteradas?

Recapitulação

Você conectou o Migrate, executou flask db init e gerou automaticamente um script com flask db migrate, pronto para ser aplicado. 🎉

Perguntas Frequentes

A aula “Inicialize e gere automaticamente uma migração” é grátis?

Sim — o texto completo de “Inicialize e gere automaticamente uma migração” é 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 “Inicialize e gere automaticamente uma migração”?

Execute flask db init e migrate. 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 2 de 4.

Quanto tempo leva a aula “Inicialize e gere automaticamente uma migração”?

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

  1. Por que você precisa de migrações, não de create_all
  2. Inicialize e gere automaticamente uma migração
  3. Aplique e reverta com upgrade
  4. Revise e edite scripts gerados
← Voltar para Flask Academy