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判断值是否在list或set中的性能对比分析
Apr 16 Python
Python中查看文件名和文件路径
Mar 31 Python
Python KMeans聚类问题分析
Feb 23 Python
Python实现的根据IP地址计算子网掩码位数功能示例
May 23 Python
python实现键盘控制鼠标移动
Nov 27 Python
Python/ArcPy遍历指定目录中的MDB文件方法
Oct 27 Python
python3中替换python2中cmp函数的实现
Aug 20 Python
Python 矩阵转置的几种方法小结
Dec 02 Python
keras 多任务多loss实例
Jun 22 Python
python实现简单的tcp 文件下载
Sep 16 Python
python绘制箱型图
Apr 27 Python
Pycharm连接远程服务器并远程调试的全过程
Jun 24 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
php addslashes 函数详细分析说明
2009/06/23 PHP
又一个php 分页类实现代码
2009/12/03 PHP
php页面跳转代码 输入网址跳转到你定义的页面
2013/03/28 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
Laravel 实现添加多语言提示信息
2019/10/25 PHP
js截取函数(indexOf,join等)
2010/09/01 Javascript
使用百度地图api实现根据地址查询经纬度
2014/12/11 Javascript
Javascript中innerHTML用法实例分析
2015/01/12 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
jQuery实用技巧必备(下)
2015/11/03 Javascript
AngularJS 中的Promise --- $q服务详解
2016/09/14 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
纯js实现画一棵树的示例
2017/09/05 Javascript
vue用addRoutes实现动态路由的示例
2017/09/15 Javascript
layui表单提交到后台自动封装到实体类的方法
2019/09/12 Javascript
JS数据类型判断的几种常用方法
2020/07/07 Javascript
[02:53]DOTA2英雄昆卡基础教程
2013/11/25 DOTA
[56:57]LGD vs VP 2019DOTA2国际邀请赛淘汰赛 胜者组赛BO3 第一场 8.20.mp4
2019/08/22 DOTA
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
Python基础中所出现的异常报错总结
2016/11/19 Python
python如何读取bin文件并下发串口
2019/07/05 Python
python__name__原理及用法详解
2019/11/02 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
2019/12/03 Python
pandas数据分组groupby()和统计函数agg()的使用
2021/03/04 Python
CSS3实现各种图形的示例代码
2016/10/19 HTML / CSS
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
完美实现CSS垂直居中的11种方法
2021/03/27 HTML / CSS
物理系毕业生自荐书范文
2014/02/22 职场文书
解除劳动合同协议书范本
2014/04/14 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
餐厅收银员岗位职责
2015/04/07 职场文书
文书工作总结(范文)
2019/07/11 职场文书
女性励志书籍推荐
2019/08/19 职场文书
再也不用花钱买漫画!Python爬取某漫画的脚本及源码
2021/06/09 Python