Django 解决新建表删除后无法重新创建等问题


Posted in Python onMay 21, 2020

起因

同步表的过程中,我手动将数据库中的一个表删除了,此时再去执行命令,发现不能再数据库中新建表了

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

No changes detected

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

删除表以后执行:

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~/code/django/blogproject /code/django/blogproject python3 manage.py makemigrations comments
Migrations for ‘comments':
comments/migrations/0001_initial.py
- Create model Comment
 /code/django/blogproject~/code/django/blogproject /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.
···

二、删除app下面目录migrations下面除了init.py其他的所有文件

三、最后,删除migrations中关于你的app的同步数据数据库记录

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 解决新建表删除后无法重新创建等问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
用Python编写一个每天都在系统下新建一个文件夹的脚本
May 04 Python
Python3搜索及替换文件中文本的方法
May 22 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
Dec 19 Python
Python实现获取前100组勾股数的方法示例
May 04 Python
使用Anaconda3建立虚拟独立的python2.7环境方法
Jun 11 Python
Tensorflow 同时载入多个模型的实例讲解
Jul 27 Python
PyQt5+requests实现车票查询工具
Jan 21 Python
python+pygame实现坦克大战
Sep 10 Python
使用python绘制温度变化雷达图
Oct 18 Python
python由已知数组快速生成新数组的方法
Apr 08 Python
Python OpenCV中的numpy与图像类型转换操作
Dec 11 Python
python 解决Fatal error in launcher:错误问题
May 21 #Python
django实现日志按日期分割
May 21 #Python
Django之富文本(获取内容,设置内容方式)
May 21 #Python
使用Python防止SQL注入攻击的实现示例
May 21 #Python
Django的ListView超详细用法(含分页paginate)
May 21 #Python
Django中FilePathField字段的用法
May 21 #Python
Django 解决上传文件时,request.FILES为空的问题
May 20 #Python
You might like
PHP编程网上资源导航
2006/10/09 PHP
mysql5写入和读出乱码解决
2006/11/25 PHP
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
PHP用swoole+websocket和redis实现web一对一聊天
2019/11/05 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
Js setInterval与setTimeout(定时执行与循环执行)的代码(可以传入参数)
2010/06/11 Javascript
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
js兼容的placeholder属性详解
2013/08/18 Javascript
jquery模拟LCD 时钟的html文件源代码
2014/06/16 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
阿里大于短信验证码node koa2的实现代码(最新)
2017/09/07 Javascript
JS基于开关思想实现的数组去重功能【案例】
2019/02/18 Javascript
详解vue beforeRouteEnter 异步获取数据给实例问题
2019/08/09 Javascript
js+css3实现简单时钟特效
2020/09/13 Javascript
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
[00:33]2018DOTA2亚洲邀请赛TNC出场
2018/04/04 DOTA
在python中实现将一张图片剪切成四份的方法
2018/12/05 Python
python批量创建指定名称的文件夹
2019/03/21 Python
pandas和spark dataframe互相转换实例详解
2020/02/18 Python
python使用requests库爬取拉勾网招聘信息的实现
2020/11/20 Python
HTML5 用动画的表现形式装载图像
2016/03/08 HTML / CSS
新驾驶员个人自我评价
2014/01/03 职场文书
初一体育教学反思
2014/01/29 职场文书
接待员岗位责任制
2014/02/10 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
四风查摆问题及整改措施
2014/10/10 职场文书
个人整改措施书面材料
2014/10/24 职场文书
老干部工作汇报材料
2014/10/28 职场文书
2014年初级职称工作总结
2014/12/08 职场文书
音乐教师个人总结
2015/02/06 职场文书
幼儿园感恩节活动总结
2015/03/24 职场文书
社区文明创建工作总结2015
2015/04/21 职场文书
互联网创业商业模式以及赚钱法则有哪些?
2019/10/12 职场文书