Pergunta

Se eu tiver duas migrações, MIG1 e MIG2, executo o Rake DB: migro, depois volto para o MIG1 e alterei o valor padrão de uma coluna, essa mudança será refletida quando eu executar o Rake DB: Migrar novamente? Ou tenho que fazer uma nova migração apenas para essa coluna fazer a mudança?

Foi útil?

Solução

Você deve fazer uma nova migração ou usar o ancinho db:rollback Tarefa para voltar à versão do seu banco de dados antes que a migração em questão fosse executada. As alterações nos scripts de migração não serão automaticamente captadas.

A versão atual do seu esquema é rastreada e aplicada a migrações, portanto, a realização de Rake DB: Migrate não executa novamente as migrações antigas. É por esse motivo que você pode usar o rollback recurso, desde que você forneça correto self.down Métodos em sua migração. Rolling para trás executa esses métodos para baixo, desfazendo as migrações.

Você pode editar a migração e re-migrar.

Outras dicas

Você pode refazer uma determinada versão executando o seguinte:

rake db:migrate:down VERSION=___________

rake db:migrate:up VERSION=____________

RAKE DB: Migre: Relo Version =____

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top