我想從一個文本字段刪除空=真不能ALTER TABLE:南:因爲它已經掛起的觸發事件
- footer=models.TextField(null=True, blank=True)
+ footer=models.TextField(blank=True, default='')
我創建的模式遷移:
manage.py schemamigration fooapp --auto
由於一些頁腳列包含
django.db.utils.IntegrityError: column "footer" contains null values
我已將此添加到架構遷移:NULL,如果我跑遷移我得到這個錯誤
for sender in orm['fooapp.EmailSender'].objects.filter(footer=None):
sender.footer=''
sender.save()
現在,我得到:
django.db.utils.DatabaseError: cannot ALTER TABLE "fooapp_emailsender" because it has pending trigger events
有什麼不對?
這個問題是類似的:http://stackoverflow.com/questions/28429933/django-migrations-using-runpython-to-commit-changes並有更有用的答案給我。 – SpoonMeiser