转储数据库并在以后删除django 1.11中的迁移时使用它

时间:2018-04-20 07:54:21

标签: python django python-3.x django-models

有时我出于某种原因必须删除迁移,我将不得不再次为django创建新数据。如何在删除迁移后转储db并在以后使用它?

1 个答案:

答案 0 :(得分:1)

您必须使用dumpdata命令。

以下命令会将整个数据库转储到db.json文件。

./manage.py dumpdata > db.json

之后,您可以使用loaddata命令将数据恢复到db。

但是,如果你做了任何重大改变,你可能会获得IntegrityError。 要解决此问题,您必须确保通过在转储数据时运行此命令来排除contenttypesauth.permissions表来备份数据库:

./manage.py dumpdata --exclude auth.permission --exclude contenttypes > db.json

之后,您可以使用新数据库安全地运行loaddata命令。

./manage.py loaddata db.json

您可以在dumpdata command找到Django文档。