Django学习笔记七----操作models修改数据库表结构

上篇博客中我们记录了如何对生成的数据库表进行:增删改查的操作,

但是实际情况中,我们经常会遇到的一个问题就是,需要更改表的结构,也就是说,在表中添加新的字段。

我们不可能建表的时候,就能想到所需要的所有字段。

具体操作:

表结构修改后,原来表中已存在的数据,就会出现结构混乱,makemigrations更新表的时候就会出错
解决方法:
1、新增加的字段,设置允许为空。生成表的时候,之前数据新增加的字段就会为空。(null=True允许数据库中为空,blank=True允许admin后台中为空)
2、新增加的字段,设置一个默认值。生成表的时候,之前的数据新增加字段就会应用这个默认值

 这样,我们就成功的在Choice表中新增了:email这个字段。

同理,我们要删除这个email字段,就直接在models中注释掉他就可以了。

记住,要同步下数据。

命令:python manage.py makemigrations

python manage.py migrate

这样,我们就实现了修改表结构的操作。

原文地址:https://www.cnblogs.com/star12111/p/15127362.html