sql >> Databasteknik >  >> RDS >> PostgreSQL

Django 1.8-migrering kan inte casta kolumn-id till heltal

Problemet är migreringen från Process.milestone som ett booleskt fält till Process.milestone som en främmande nyckel. Postgres väntar inte på att en migrering ska misslyckas på ocastbar data. Den vill ha en regel för att ändra tabellen i förväg.

Om du inte avser någon form av datamigrering mellan två fält är det enklaste alternativet att helt enkelt släppa och lägga till fältet. I det här specifika fallet skulle det innebära att operationerna ändras enligt följande:

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


  1. Visa poster som räknar data för en viss kolumn och summerar totala belopp

  2. Hur kontrollerar man att anslutningssträngen är giltig?

  3. Hur man tar reda på om det finns en unik nyckelbegränsning för givna kolumner

  4. Databasdesign för anpassade formulärbyggare (och lagring av resultat)