【发布时间】:2017-04-13 16:18:11
【问题描述】:
在对this question answer 的评论中,我询问了如何删除具有默认值函数的字段。综上所述,示例代码为:
def get_deadline():
return datetime.today() + timedelta(days=20)
class Bill(models.Model):
name = models.CharField(max_length=50)
customer = models.ForeignKey(User, related_name='bills')
date = models.DateField(default=datetime.today)
deadline = models.DateField(default=get_deadline)
我对代码的问题是:
如何在删除
deadline字段的同时再次删除get_deadline功能?我已经删除了一个带有函数的字段 默认值,但现在 Django 在删除后在启动时崩溃 功能。我可以手动编辑迁移,这样就可以了 这种情况下,但是如果您只是更改了默认功能,并且 想要移除旧功能?
我最终删除了引用它的迁移的默认部分,但是如何很好地删除它?
我能想到的唯一方法是压缩迁移,这样使用该函数的迁移就会消失,但这并不总是一种选择。
【问题讨论】:
标签: django django-models django-migrations