解决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函数中定义参数的四种方式
Nov 30 Python
Python爬虫DNS解析缓存方法实例分析
Jun 02 Python
python print 按逗号或空格分隔的方法
May 02 Python
详解Python数据分析--Pandas知识点
Mar 23 Python
pyenv与virtualenv安装实现python多版本多项目管理
Aug 17 Python
Django项目之Elasticsearch搜索引擎的实例
Aug 21 Python
Python实现从N个数中找到最大的K个数
Apr 02 Python
Python如何对XML 解析
Jun 28 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
Nov 25 Python
pytorch中index_select()的用法详解
Jan 06 Python
python实现自定义日志的具体方法
May 28 Python
Python3.8官网文档之类的基础语法阅读
Sep 04 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下使用以下代码连接并测试
2008/04/09 PHP
php 三维饼图的实现代码
2008/09/28 PHP
深入理解PHP原理之Session Gc的一个小概率Notice
2011/04/12 PHP
在wamp集成环境下升级php版本(实现方法)
2013/07/01 PHP
php实现无限级分类
2014/12/24 PHP
两款万能的php分页类
2015/11/12 PHP
基于PHP实现简单的随机抽奖小程序
2016/01/05 PHP
Smarty变量用法详解
2016/05/11 PHP
Laravel搭建后台登录系统步骤详解
2016/07/26 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
jQuery中获取Radio元素值的方法
2013/07/02 Javascript
JavaScript创建对象的写法
2013/08/29 Javascript
angular简介和其特点介绍
2015/01/29 Javascript
jQuery选择器源码解读(三):tokenize方法
2015/03/31 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
JS实现的竖向折叠菜单代码
2015/10/21 Javascript
vue2.0模拟锚点的实例
2018/03/14 Javascript
基于vue和react的spa进行按需加载的实现方法
2018/09/29 Javascript
详解iframe跨域的几种常用方法(小结)
2019/04/29 Javascript
微信小程序国际化探索实现(附源码地址)
2020/05/20 Javascript
vue中渲染对象中属性时显示未定义的解决
2020/07/31 Javascript
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python使用matplotlib绘制折线图教程
2017/02/08 Python
详解用Python实现自动化监控远程服务器
2019/05/18 Python
使用 Python 清理收藏夹里已失效的网站
2019/12/03 Python
Python批量安装卸载1000个apk的方法
2020/04/10 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
2020/09/03 Python
canvas实现高阶贝塞尔曲线(N阶贝塞尔曲线生成器)
2018/01/10 HTML / CSS
美国二手复古奢侈品包包购物网站:LXRandCo
2019/06/18 全球购物
电子商务专业求职信
2014/03/08 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
企业法人代表证明书
2015/06/18 职场文书
趣味运动会新闻稿
2015/07/17 职场文书
Python Pandas 删除列操作
2022/03/16 Python