Que Django é fantástico nós sabemos, mas nem tudo são flores na terra dos poneis cor-de-rosa. O ORM do Django tem algumas limitações e uma das principais (por enquanto) é que ele não consegue fazer ALTER TABLE. Na prática, suas tabelas não evoluem junto com seus models. Se no meio de um projeto, sua aplicação evoluir ao ponto de precisar de uma remodelagem, usando o ORM puro, você teria que descer ao nível do SQL para alterar suas tabelas ou dar DROP no banco e rodar o syncdb outra vez. Mas graças a Andrew Godwin, Django Core Developer, temos uma ferramenta que cuida de todas as migrações para nós, o South. Uso obrigatório para os desenvolvedores mais experientes, o south ainda é pouco conhecido para aqueles que estão começando a desenvolver com Django. Vamos falar sobre migrações, o que esperar da nova versão do south e sobre o futuro das migrações com Django, o django.db.migrations, que o próprio Andrew está desenvolvendo.