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抓取网页正文的源码
Jun 11 Python
Python 操作MySQL详解及实例
Apr 30 Python
利用python获取当前日期前后N天或N月日期的方法示例
Jul 30 Python
使用python 和 lint 删除项目无用资源的方法
Dec 20 Python
Python 批量合并多个txt文件的实例讲解
May 08 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
Nov 14 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
Dec 05 Python
对python周期性定时器的示例详解
Feb 19 Python
2019 Python最新面试题及答案16道题
Apr 11 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
解决python中导入win32com.client出错的问题
Jul 26 Python
Python编写一个验证码图片数据标注GUI程序附源码
Dec 09 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实现加密的几种方式介绍
2015/02/22 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
Jquery从头学起第四讲 jquery入门教程
2010/08/01 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
js确定对象类型方法
2012/03/30 Javascript
js实现鼠标触发图片抖动效果的方法
2015/02/27 Javascript
wangEditor编辑器失去焦点后仍然可以在原位置插入图片分析
2015/05/06 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
javascript iframe跨域详解
2016/10/26 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
JS中使用cavas截图网页并解决跨域及模糊问题
2018/11/13 Javascript
详解Vue This$Store总结
2018/12/17 Javascript
vue 封装面包屑组件教程
2020/11/16 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
2020/12/04 Javascript
JavaScript中arguments的使用方法详解
2020/12/20 Javascript
用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试
2014/07/14 Python
使用PyCharm配合部署Python的Django框架的配置纪实
2015/11/19 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
Python从函数参数类型引出元组实例分析
2019/05/28 Python
Python序列对象与String类型内置方法详解
2019/10/22 Python
Python识别html主要文本框过程解析
2020/02/18 Python
使用jupyter notebook直接打开.md格式的文件
2020/04/10 Python
python中判断文件结束符的具体方法
2020/08/04 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
这段代码难道不该打印出56吗
2013/02/27 面试题
Java面试题:请说出如下代码的输出结果
2013/04/22 面试题
物理专业本科生自荐信
2014/01/30 职场文书
学生喝酒检讨书
2014/02/06 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
银行客户经理岗位职责
2015/04/09 职场文书
大学生暑假实习总结
2015/07/13 职场文书
《观潮》教学反思
2016/02/17 职场文书