django 做 migrate 时 表已存在的处理方法

yipeiwu_com5年前Python基础

在开发web的时候,如果是以前已存在的项目,项目下载下来后,为了使用测试库的数据,会直接将整个测试库(如sqlite3)拿到本机来。这种情况下,如果执行的顺序不对,很容易在执行migrate的时候出现数据库已存在的错误:

django.db.utils.OperationalError: (1050, "Table 'xxx' already exists")

要处理这种情况,如果是数据表都已经存在了,在migrate时直接使用 --fake-initial 来处理

python manage.py migrate --fake-initial

如果是因有外键存在,需要初始化多个表,且有部分数据表已创建,又有部分未创建,可以使用 --fake <appname>来处理

python manage.py migrate --fake <appname>

参考https://stackoverflow.com/questions/25924858/django-1-7-migrate-gets-error-table-already-exists

以上这篇django 做 migrate 时 表已存在的处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中bytes和str类型的区别

经过一上午的查找资料。大概理清楚了bytes类型和str类型的区别。 bytes类型和str类型在呈现形式有相同之处,如果你print一个bytes类型的变量,会打印一个用b开头,用单引...

对python数据切割归并算法的实例讲解

当一个 .txt 文件的数据过于庞大,此时想要对数据进行排序就需要先将数据进行切割,然后通过归并排序,最终实现对整体数据的排序。要实现这个过程我们需要进行以下几步:获取总数据行数;根据行...

详解Python的collections模块中的deque双端队列结构

deque 是 double-ended queue的缩写,类似于 list,不过提供了在两端插入和删除的操作。 appendleft 在列表左侧插入 popleft 弹出列表...

django文档学习之applications使用详解

django文档学习之applications使用详解

本文研究的主要是Django1.10文档的深入学习,Applications基础部分的相关内容,具体介绍如下。 Applications应用 Django包含一个安装的应用程序的注册表,...

python 求定积分和不定积分示例

python 求定积分和不定积分示例

求f(x) = sin(x)/x 的不定积分和负无穷到正无穷的定积分 sin(x)/x 的不定积分是信号函数sig ,负无穷到正无穷的定积分为pi import math impor...