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 15 Python
Python 爬虫学习笔记之正则表达式
Sep 21 Python
python解决网站的反爬虫策略总结
Oct 26 Python
详解Django的CSRF认证实现
Oct 09 Python
Django REST framework内置路由用法
Jul 26 Python
使用pycharm在本地开发并实时同步到服务器
Aug 02 Python
python计算n的阶乘的方法代码
Oct 25 Python
python中Ansible模块的Playbook的具体使用
May 28 Python
python编写softmax函数、交叉熵函数实例
Jun 11 Python
Python流程控制语句的深入讲解
Jun 15 Python
Python文件操作及内置函数flush原理解析
Oct 13 Python
Python 的演示平台支持 WSGI 接口的应用
Apr 20 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
星际实力自我测试
2020/03/04 星际争霸
在线短消息收发的程序,不用数据库
2006/10/09 PHP
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
PHP swfupload图片上传的实例代码
2013/09/30 PHP
Yii学习总结之安装配置
2015/02/22 PHP
PHP5.5迭代生成器用法实例详解
2016/03/16 PHP
php实现文件上传基本验证
2020/03/04 PHP
Javascript isArray 数组类型检测函数
2009/10/08 Javascript
写给想学习Javascript的朋友一点学习经验小结
2010/11/23 Javascript
js实现双向链表互联网机顶盒实战应用实现
2011/10/28 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
JS验证身份证有效性示例
2013/10/11 Javascript
node中socket.io的事件使用详解
2014/12/15 Javascript
jQuery实现标题有打字效果的焦点图代码
2015/11/16 Javascript
一波JavaScript日期判断脚本分享
2016/03/06 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
bootstrap table分页模板和获取表中的ID方法
2017/01/10 Javascript
Vue中计算属性computed的示例解读
2017/07/26 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
js计算两个日期间的天数月的实例代码
2018/09/20 Javascript
浅谈开发eslint规则
2018/10/01 Javascript
Vue 按照创建时间和当前时间显示操作(刚刚,几小时前,几天前)
2020/09/10 Javascript
Python正则表达式教程之一:基础篇
2017/03/02 Python
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
2017/12/20 Python
tensorflow实现KNN识别MNIST
2018/03/12 Python
python批量修改图片大小的方法
2018/07/24 Python
Python读取excel中的图片完美解决方法
2018/07/27 Python
python利用itertools生成密码字典并多线程撞库破解rar密码
2019/08/12 Python
pandas读取csv文件提示不存在的解决方法及原因分析
2020/04/21 Python
python 监控logcat关键字功能
2020/09/04 Python
深入理解Python变量的数据类型和存储
2021/02/01 Python
注塑工厂厂长岗位职责
2013/12/02 职场文书
供货协议书
2014/04/22 职场文书
九一八事变纪念日演讲稿
2014/09/14 职场文书
2014年教师党员自我评议
2014/09/19 职场文书
2014年高校辅导员工作总结
2014/12/09 职场文书