Migrating ManyToManyField to null true, blank true, isn't recognized

倖福魔咒の 提交于 2019-11-28 09:04:27

That behavior is correct: null doesn't mean anything at the database level when used with a ManyToManyField. The declaration of a ManyToManyField causes the creation of an intermediate table to hold the relationship, and although Django will create a standard attribute on your model instance for your convenience, there is no actual column representing it that could be nulled. By definition there can always be zero instances of the relationship.

blank=False, though, does have an effect on the admin app, forcing the user to choose at least one relation.

(Note that Django's built-in migration system creates migrations for just about any change to a model, regardless of whether it affects the database or not. So this change could lead to a migration, but it wouldn't affect the database or whether or not you could have zero instances of the relationship.)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!