Django学习笔记七----操作models修改数据库表结构
上篇博客中我们记录了如何对生成的数据库表进行:增删改查的操作,
但是实际情况中,我们经常会遇到的一个问题就是,需要更改表的结构,也就是说,在表中添加新的字段。
我们不可能建表的时候,就能想到所需要的所有字段。
具体操作:
表结构修改后,原来表中已存在的数据,就会出现结构混乱,makemigrations更新表的时候就会出错
解决方法:
1、新增加的字段,设置允许为空。生成表的时候,之前数据新增加的字段就会为空。(null=True允许数据库中为空,blank=True允许admin后台中为空)
2、新增加的字段,设置一个默认值。生成表的时候,之前的数据新增加字段就会应用这个默认值
这样,我们就成功的在Choice表中新增了:email这个字段。
同理,我们要删除这个email字段,就直接在models中注释掉他就可以了。
记住,要同步下数据。
命令:python manage.py makemigrations
python manage.py migrate
这样,我们就实现了修改表结构的操作。