समस्या एक बूलियन फ़ील्ड के रूप में Process.milestone से एक विदेशी कुंजी के रूप में Process.milestone में माइग्रेशन है। पोस्टग्रेज अनकास्टेबल डेटा पर माइग्रेशन के विफल होने की प्रतीक्षा नहीं करता है। यह तालिका को पहले से बदलने के लिए एक नियम चाहता है।
यदि आप दो क्षेत्रों के बीच किसी भी प्रकार के डेटा माइग्रेशन का इरादा नहीं रखते हैं, तो सबसे आसान विकल्प केवल फ़ील्ड को छोड़ना और जोड़ना है। इस विशिष्ट मामले में, इसका मतलब होगा कि संचालन को निम्नानुसार बदलना:
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'},
)
]