django重新生成数据库中的某张表方法

yipeiwu_com6年前Python基础

今天有碰到这种情况,数据库中有张表没办法通过migration来更改, migrate时报 django.db.utils.OperationalError: (1050, “Table ‘表名' already exists)索性就直接把这张表删了重新导.

1 删除数据库中的django_migration 表 以及 删除你要重新导的表

2 将你要导的那个app中的migrate 文件删除掉

3 进行虚拟导入

migrate --fake 

虚拟导入会重新生成django_migration 表 并且里面有之前的导入记录(避免在执行migrate时重新导入已存在的表),除了你第二步删的那个文件里的那些记录.

4 重新导入你需要的表

makemigration shop(你要导的app)
migrate shop

这样就完成了。

以上这篇django重新生成数据库中的某张表方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

django中ORM模型常用的字段的使用方法

与数据类型相关的字段 CharField         作用:字符串字段, 用于较短的字符串.  &nb...

Python:Scrapy框架中Item Pipeline组件使用详解

Item Pipeline简介 Item管道的主要责任是负责处理有蜘蛛从网页中抽取的Item,他的主要任务是清晰、验证和存储数据。 当页面被蜘蛛解析后,将被发送到Item管道,并经过几个...

pytorch 修改预训练model实例

我就废话不多说了,直接上代码吧! class Net(nn.Module): def __init__(self , model): super(Net, self)._...

python简单线程和协程学习心得(分享)

python中对线程的支持的确不够,不过据说python有足够完备的异步网络框架模块,希望日后能学习到,这里就简单的对python中的线程做个总结 threading库可用来在单独的线程...

在Python的Flask框架中实现全文搜索功能

 全文检索引擎入门 灰常不幸的是,关系型数据库对全文检索的支持没有被标准化。不同的数据库通过它们自己的方式来实现全文检索,而且SQLAlchemy在全文检索上也没有提供一个好的...