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读写Redis数据库操作示例
Mar 18 Python
深入解析Python设计模式编程中建造者模式的使用
Mar 02 Python
Python中eval带来的潜在风险代码分析
Dec 11 Python
python中format()函数的简单使用教程
Mar 14 Python
详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击
Oct 09 Python
Python pyinotify模块实现对文档的实时监控功能方法
Oct 13 Python
python处理document文档保留原样式
Sep 23 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
Nov 11 Python
python通过opencv实现图片裁剪原理解析
Jan 19 Python
python自动化unittest yaml使用过程解析
Feb 03 Python
Python中的np.argmin()和np.argmax()函数用法
Jun 02 Python
利用python调用摄像头的实例分析
Jun 07 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
VOLVO车载收音机
2021/03/02 无线电
用穿越火线快速入门php面向对象
2012/02/22 PHP
处理单名多值表单的详解
2013/06/08 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
2013/10/16 PHP
document.all与WEB标准
2020/05/13 Javascript
在JavaScript中遭遇级联表达式陷阱
2007/03/08 Javascript
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
告诉大家什么是JSON
2008/06/10 Javascript
使用js解决由border属性引起的div宽度问题
2013/11/26 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
js禁止页面刷新与后退的方法
2015/06/08 Javascript
jQuery插件之validation插件
2017/03/29 jQuery
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
2017/12/09 Javascript
Vue中的无限加载vue-infinite-loading的方法
2018/04/08 Javascript
安装Node.js并启动本地服务的操作教程
2018/05/12 Javascript
解决nodejs的npm命令无反应的问题
2018/05/17 NodeJs
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
JavaScript实现留言板案例
2020/03/17 Javascript
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
Python深入学习之闭包
2014/08/31 Python
Python功能键的读取方法
2015/05/28 Python
详解Python判定IP地址合法性的三种方法
2018/03/06 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
对Python中for复合语句的使用示例讲解
2018/11/01 Python
python如何将多个PDF进行合并
2019/08/13 Python
使用pytorch 筛选出一定范围的值
2020/06/28 Python
pycharm2020.2 配置使用的方法详解
2020/09/16 Python
Python中Yield的基本用法
2020/10/18 Python
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
2015年派出所工作总结
2015/04/24 职场文书
少年的你:世界上没有如果,要在第一次就勇敢的反抗
2019/11/20 职场文书
mysql升级到5.7时,wordpress导数据报错1067的问题
2021/05/27 MySQL
windows10 家庭版下FTP服务器搭建教程
2022/08/05 Servers