Django models文件模型变更错误解决


Posted in Python onMay 11, 2020

表结构的修改

1、表结构修改后,原来表中已存在的数据,就会出现结构混乱,makemigrations更新表的时候就会出错

比如第一次建模型,漏了一个字段,后来补上了。(经常遇到模型字段修改)

Django models文件模型变更错误解决

重新makemigrations,然后报错

Django models文件模型变更错误解决

数据库规则:除了新建表,如果你再次增加字段,数据库会有一些自动检测的东西(比如有没有默认值,是否允许为空)

如果表中已经有数据,这个字段还是非空的,且没有设定默认值,后台检测不通过就会报错。

解决方法(有两种):

1、新增加的字段,设置允许为空。生成表的时候,之前数据新增加的字段就会为空。(null=True允许数据库中为空,blank=True允许admin后台中为空)

2、新增加的字段,设置一个默认值。生成表的时候,之前的数据新增加字段就会应用这个默认值(default=None,默认值为空)

Django models文件模型变更错误解决

删除0001_initial.py,再次makemigrations

Django models文件模型变更错误解决

接着再往数据库推送,python3 manage.py migrate

Django models文件模型变更错误解决

原来是自己在数据库手动添加过,不是通过django方式的。

于是手贱想删除表,删了再次执行,发现没有变化

Django models文件模型变更错误解决

删表有风险,可能误删其他表,如果表不多,所以还是新建一个库,环境干净(强迫症啊)

最后完美解决

Django models文件模型变更错误解决

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python根据给定文件返回文件名和扩展名的方法
Mar 27 Python
pygame学习笔记(3):运动速率、时间、事件、文字
Apr 15 Python
讲解Python中if语句的嵌套用法
May 14 Python
Python2.x中文乱码问题解决方法
Jun 02 Python
Python实现约瑟夫环问题的方法
May 03 Python
Python采用Django开发自己的博客系统
Sep 29 Python
浅谈DataFrame和SparkSql取值误区
Jun 09 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
Jun 25 Python
python通过SSH登陆linux并操作的实现
Oct 10 Python
PyTorch中model.zero_grad()和optimizer.zero_grad()用法
Jun 24 Python
matplotlib基础绘图命令之imshow的使用
Aug 13 Python
python实现进度条的多种实现
Apr 29 Python
对Matlab中共轭、转置和共轭装置的区别说明
May 11 #Python
Django静态资源部署404问题解决方案
May 11 #Python
python矩阵运算,转置,逆运算,共轭矩阵实例
May 11 #Python
Selenium元素定位的30种方式(史上最全)
May 11 #Python
Python基于codecs模块实现文件读写案例解析
May 11 #Python
Python基于pandas爬取网页表格数据
May 11 #Python
Python调用shell命令常用方法(4种)
May 11 #Python
You might like
《神奇女侠:血脉》神力女超人大战犯罪公司
2020/04/09 欧美动漫
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
详解php中的implements 使用
2017/06/13 PHP
<script defer> defer 是什么意思
2009/05/10 Javascript
测试你的JS的掌握程度的代码
2009/12/09 Javascript
js限制文本框为整数和货币的函数代码
2010/10/13 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
jQuery实现的Div窗口震动特效
2014/06/09 Javascript
Jquery实现仿腾讯微博发表广播
2014/11/17 Javascript
js+jquery实现图片裁剪功能
2015/01/02 Javascript
js实现YouKu的漂亮搜索框效果
2015/08/19 Javascript
Bootstrap每天必学之媒体对象
2015/11/30 Javascript
javascript实现的猜数小游戏完整实例代码
2016/05/10 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
2016/08/05 Javascript
JS Canvas定时器模拟动态加载动画
2016/09/17 Javascript
js数组去重的hash方法
2016/12/22 Javascript
angular2中router路由跳转navigate的使用与刷新页面问题详解
2017/05/07 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
VueJs监听window.resize方法示例
2018/01/17 Javascript
JS 使用 window对象的print方法实现分页打印功能
2018/05/16 Javascript
如何实现iframe父子传参通信
2020/02/05 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
小程序中手机号识别的示例
2020/12/14 Javascript
[01:00:06]加油DOTA_EP01_网络版
2014/08/09 DOTA
[00:37]DOTA2上海特级锦标赛 Secert 战队宣传片
2016/03/03 DOTA
python可视化爬虫界面之天气查询
2019/07/03 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
python工具快速为音视频自动生成字幕(使用说明)
2021/01/27 Python
详解CSS3中使用gradient实现渐变效果的方法
2015/08/18 HTML / CSS
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
欧洲最大的球衣网上商店:Kitbag
2017/11/11 全球购物
Tretorn美国官网:瑞典外套和鞋类品牌,抵御风雨
2018/07/19 全球购物
党员个人剖析材料
2014/09/30 职场文书
关于随地扔垃圾的检讨书
2014/09/30 职场文书
Java中API的使用方法详情
2022/04/06 Java/Android