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 获取Android设备信息的轻量级框架
Dec 18 Python
python spyder中读取txt为图片的方法
Apr 27 Python
python 实现倒排索引的方法
Dec 25 Python
python中partial()基础用法说明
Dec 30 Python
基于python历史天气采集的分析
Feb 14 Python
Python API 自动化实战详解(纯代码)
Jun 11 Python
python 多进程共享全局变量之Manager()详解
Aug 15 Python
python实现的config文件读写功能示例
Sep 24 Python
Python算法中的时间复杂度问题
Nov 19 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
Nov 24 Python
Django REST Framework 分页(Pagination)详解
Nov 30 Python
Python之Sklearn使用入门教程
Feb 19 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 事件机制(2)
2011/03/23 PHP
php cookies中删除的一般赋值方法
2011/05/07 PHP
PHP基础陷阱题(变量赋值)
2012/09/12 PHP
微信API接口大全
2015/04/15 PHP
两种php给图片加水印的实现代码
2020/04/18 PHP
利用PHP命令行模式采集股票趋势信息
2016/08/09 PHP
PHPMailer发送邮件
2016/12/28 PHP
Laravel中validation验证 返回中文提示 全局设置的方法
2019/09/29 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
jquery怎样实现ajax联动框(一)
2013/03/08 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
2013/03/29 Javascript
JS获取IP、MAC和主机名的五种方法
2013/11/14 Javascript
node.js中的fs.fchmodSync方法使用说明
2014/12/16 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
2017/02/08 Javascript
js canvas实现擦除效果示例代码
2017/04/26 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
通俗解释JavaScript正则表达式快速记忆
2017/08/23 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
springboot+vue+对接支付宝接口+二维码扫描支付功能(沙箱环境)
2020/10/15 Javascript
MySQL适配器PyMySQL详解
2017/09/20 Python
解决Pycharm的项目目录突然消失的问题
2020/01/20 Python
Python实现邮件发送的详细设置方法(遇到问题)
2021/01/18 Python
美国新兴城市生活方式零售商:VILLA
2017/12/06 全球购物
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
阿联酋手表和配饰购物网站:Rivolishop
2019/11/25 全球购物
临床医学专业学生的自我评价分享
2013/11/21 职场文书
班级入场式解说词
2014/02/01 职场文书
工厂仓管员岗位职责范本
2014/07/17 职场文书
校运会新闻稿
2015/07/17 职场文书
四年级数学教学反思
2016/02/16 职场文书
交通安全宣传标语(100条)
2019/08/22 职场文书
Python实现学生管理系统(面向对象版)
2021/06/24 Python
JavaScript高级程序设计之基本引用类型
2021/11/17 Javascript