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

yipeiwu_com7年前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在Win7下的安装及创建项目hello word简明教程

python广受欢迎的编程语言之一,本文简述了python 的django 框架安装与开发。 Django在Win7下的安装及创建项目hello word,相对而言非常简单,这里直接给出...

深入Python函数编程的一些特性

绑定 细心的读者可能记得我在 第 1 部分的函数技术中指出的限制。特别在 Python 中不能避免表示函数表达式的名称的重新绑定。在 FP 中,名称通常被理解为较长表达式的缩写,但这一说...

解决Django layui {{}}冲突的问题

layui的table的自定义模板需要用到{{}},但是和Django的{{}}冲突了,layui的{{}}失效了 解决方法:从Django 1.5开始,支持{% verbatim %}...

python 实现将Numpy数组保存为图像

第一种方案 可以使用scipy.misc,代码如下: import scipy.misc misc.imsave('out.jpg', image_array) 上面的scipy版...

在Python中编写数据库模块的教程

在一个Web App中,所有数据,包括用户信息、发布的日志、评论等,都存储在数据库中。在awesome-python-app中,我们选择MySQL作为数据库。 Web App里面有很多地...