解决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中的装饰器的用法
Apr 24 Python
Python遍历指定文件及文件夹的方法
May 09 Python
Django学习笔记之Class-Based-View
Feb 15 Python
windows下python安装paramiko模块和pycrypto模块(简单三步)
Jul 06 Python
浅谈tensorflow中几个随机函数的用法
Jul 27 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
Python3操作Excel文件(读写)的简单实例
Sep 02 Python
DJANGO-URL反向解析REVERSE实例讲解
Oct 25 Python
Python: 传递列表副本方式
Dec 19 Python
python 6种方法实现单例模式
Dec 15 Python
python实现的人脸识别打卡系统
May 08 Python
Python一行代码实现自动发邮件功能
May 30 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
无刷新动态加载数据 滚动条加载适合评论等页面
2013/10/16 PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
2016/12/07 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
2019/10/11 PHP
javascript 函数调用的对象和方法
2010/07/01 Javascript
js substr支持中文截取函数代码(中文是双字节)
2013/04/17 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
2013/10/17 Javascript
21个值得收藏的Javascript技巧
2014/02/04 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
js兼容火狐获取图片宽和高的方法
2015/05/21 Javascript
巧用数组制作图片切换js代码
2016/11/29 Javascript
jQuery实现字符串全部替换的方法【推荐】
2017/03/09 Javascript
BootStrap注意事项小结(五)表单
2017/03/10 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
JS实现非首屏图片延迟加载的示例
2018/01/06 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
2018/03/28 Javascript
vue实现前端列表多条件筛选
2020/10/26 Javascript
python 实现插入排序算法
2012/06/05 Python
python遍历 truple list dictionary的几种方法总结
2016/09/11 Python
python学习之面向对象【入门初级篇】
2017/01/21 Python
python学生信息管理系统
2018/03/13 Python
python多进程实现文件下载传输功能
2018/07/28 Python
python初学者,用python实现基本的学生管理系统(python3)代码实例
2019/04/10 Python
tensorflow之自定义神经网络层实例
2020/02/07 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
移动HTML5前端框架—MUI的使用
2017/12/18 HTML / CSS
html5 制作地图当前定位箭头的方法示例
2020/01/10 HTML / CSS
Dr.Jart+美国官网:韩国药妆品牌
2019/01/18 全球购物
您的时尚,您的生活方式:DTLR Villa
2019/12/25 全球购物
安全资金保障制度
2014/01/23 职场文书
副厂长岗位职责
2014/02/02 职场文书
农林环境专业求职信
2014/03/13 职场文书
MySQL表字段时间设置默认值
2021/05/13 MySQL
详解如何用Python实现感知器算法
2021/06/18 Python
gateway网关接口请求的校验方式
2021/07/15 Java/Android
动漫APP软件排行榜前十名,半次元上榜,第一款由腾讯公司推出
2022/03/18 杂记
Nginx报错104:Connection reset by peer问题的解决及分析
2022/07/23 Servers