Masalahnya adalah migrasi dari Process.milestone sebagai bidang boolean ke Process.milestone sebagai kunci asing. Postgres tidak menunggu migrasi gagal pada data yang tidak dapat dicetak. Ia menginginkan aturan untuk mengubah tabel terlebih dahulu.
Jika Anda tidak bermaksud melakukan migrasi data apa pun di antara dua bidang, opsi termudah adalah dengan menghapus dan menambahkan bidang tersebut. Dalam kasus khusus ini, itu berarti mengubah operasi sebagai berikut:
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'},
)
]