我已经部署了Django网站,但刚刚意识到我没有强制其中一个字段。就目前的情况而言,
blank=True,null=True
现在如果我继续把它改成
blank=False
会否对资料库及现有的资料有任何影响?
发布于 2014-03-18 09:13:06
不是的。blank仅在应用程序级别强制执行。
发布于 2014-03-18 09:18:13
正如https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.Field.blank讨论的那样:
因此,如果您将"blank=True,null=True“改为"blank=False",您仍然可以将空值存储在表中--但是您无法将这些空值实际地输入到数据库中,因为您的表单将需要输入。
这可能正是您想要的(不需要db迁移)。
如果要从数据库中获取现有的空值,请更新数据,然后将空值和空值设置为False。不过,在这一点上,您需要进行数据库迁移(通过South或直接用ALTER更改数据库).更改命令)。
https://stackoverflow.com/questions/22474657
复制相似问题