PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Migração do Django 1.8 incapaz de converter id de coluna para inteiro


O problema é a migração de Process.milestone como um campo booleano para Process.milestone como uma chave estrangeira. O Postgres não espera que uma migração falhe em dados que não podem ser convertidos. Ele quer uma regra para alterar a tabela com antecedência.

Se você não pretende fazer nenhum tipo de migração de dados entre dois campos, a opção mais fácil é simplesmente descartar e adicionar o campo. Neste caso específico, isso significaria alterar as operações da seguinte forma:
operations = [
    migrations.RemoveField(
        model_name='process',
        name='milestone'
    ),
    migrations.AddField(
        model_name='process',
        name='milestone',
        field=models.ForeignKey(to='processes.Milestone'),
    ),
    migrations.AlterModelOptions(
        name='process',
        options={'ordering': ['milestone', 'sequence'], 'verbose_name_plural': 'processes'},
    )
]