解决Django migrate No changes detected 不能创建表的问题


Posted in Python onMay 27, 2018

起因

修改了表结构以后执行python3 manage.py migrate 报错:

django.db.utils.OperationalError: (1091, "Can't DROP 'email'; check that column/key exists")

所以进数据库把对应的表删除了,想着重新生成这张表.

删除表以后执行:

python3 manage.py makemigrations
python3 manage.py migrate

还是不能生成表,提示:No changes detected

处理过程

首先删除了app对应目录下的数据库对应的文件和缓存文件:

$ rm -rf migrations/ __pycache__/

重新执行:

$ python3 manage.py makemigrations
No changes detected
$~/code/django/blogproject$ python3 manage.py makemigrations comments
Migrations for 'comments':
 comments/migrations/0001_initial.py
 - Create model Comment
$~/code/django/blogproject$ python3 manage.py migrate
Operations to perform:
 Apply all migrations: admin, auth, blog, comments, contenttypes, sessions, users
Running migrations:
 No migrations to apply.

进入数据库发现仍然没有生成表.

然后发现有一张django_migrations表,里面记录这有关创建表的记录,删除对应的数据表:

delete from django_migrations where app='yourappname';

重新执行生成数据库命令:

$ python3 manage.py makemigrations comments
No changes detected in app 'comments'
$~/code/django/blogproject$ python3 manage.py migrate comments
Operations to perform:
 Apply all migrations: comments
Running migrations:
 Applying comments.0001_initial... OK

数据表顺利生成.

结论

在执行

python3 manage.py makemigrations python3 manage.py migrate

操作的时候,不仅会创建0001_initial.py对应的模型脚本,还会创建一个数据库记录创建的模型.如果想重新生成数据库,需要两个地方都做删除.

以上这篇解决Django migrate No changes detected 不能创建表的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现感知机(PLA)算法
Dec 20 Python
Python数据分析之获取双色球历史信息的方法示例
Feb 03 Python
PyQt5每天必学之进度条效果
Apr 19 Python
Python 编程速成(推荐)
Apr 15 Python
Python实现计算文件MD5和SHA1的方法示例
Jun 11 Python
Python使用os.listdir和os.walk获取文件路径
May 21 Python
使用Python构造hive insert语句说明
Jun 06 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
Aug 17 Python
pytorch 移动端部署之helloworld的使用
Oct 30 Python
python 基于Apscheduler实现定时任务
Dec 15 Python
Python turtle实现贪吃蛇游戏
Jun 18 Python
Django框架模板用法详解
Jun 10 Python
django 在原有表格添加或删除字段的实例
May 27 #Python
用python写扫雷游戏实例代码分享
May 27 #Python
和孩子一起学习python之变量命名规则
May 27 #Python
儿童学习python的一些小技巧
May 27 #Python
django初始化数据库的实例
May 27 #Python
django 删除数据库表后重新同步的方法
May 27 #Python
Django 根据数据模型models创建数据表的实例
May 27 #Python
You might like
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
2010/06/03 PHP
php的大小写敏感问题整理
2011/12/29 PHP
PHPThumb图片处理实例
2014/05/03 PHP
使用GDB调试PHP代码,解决PHP代码死循环问题
2015/03/02 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
2019/05/06 PHP
smarty模板的使用方法实例分析
2019/09/18 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
2019/10/22 PHP
javascript克隆对象深度介绍
2012/11/20 Javascript
js复制到剪切板的实例方法
2013/06/28 Javascript
JavaScript跨域方法汇总
2014/10/16 Javascript
JavaScript中的console.group()函数详细介绍
2014/12/29 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
js插件dropload上拉下滑加载数据实例解析
2016/07/27 Javascript
扩展Bootstrap Tooltip插件使其可交互的方法
2016/11/07 Javascript
使用Bootstrap Tabs选项卡Ajax加载数据实现
2016/12/23 Javascript
Vue通过URL传参如何控制全局console.log的开关详解
2017/12/07 Javascript
详解Nodejs内存治理
2018/05/13 NodeJs
利用vscode调试编译后的js代码详解
2018/05/14 Javascript
解决vue项目input输入框双向绑定数据不实时生效问题
2020/08/05 Javascript
解决python nohup linux 后台运行输出的问题
2018/05/11 Python
Python装饰器模式定义与用法分析
2018/08/06 Python
PyTorch中常用的激活函数的方法示例
2019/08/20 Python
Python计算不规则图形面积算法实现解析
2019/11/22 Python
使用Python进行防病毒免杀解析
2019/12/13 Python
使用python turtle画高达
2020/01/19 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
2020/03/10 Python
python argparse传入布尔参数false不生效的解决
2020/04/20 Python
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
函授教育个人学习的自我评价
2013/12/31 职场文书
计算机应用应届生求职信
2014/07/12 职场文书
查摆问题对照检查材料
2014/08/28 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
大学生操行评语大全
2014/12/31 职场文书
物业接待员岗位职责
2015/04/15 职场文书
2015年大学辅导员工作总结
2015/05/12 职场文书
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android