sql >> Base de Datos >  >> RDS >> PostgreSQL

La migración de Django 1.8 no puede convertir la identificación de la columna en un número entero

El problema es la migración de Process.milestone como campo booleano a Process.milestone como clave externa. Postgres no espera a que una migración falle en datos que no se pueden convertir. Quiere una regla para alterar la tabla por adelantado.

Si no tiene intención de realizar ningún tipo de migración de datos entre dos campos, la opción más sencilla es simplemente soltar y agregar el campo. En este caso específico, significaría cambiar las operaciones de la siguiente manera:

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'},
    )
]