6

我有一个 PostgreSQL 数据库,我在其中执行了 python manage.py dumpdata 以将数据备份到 json 文件中。我创建了一个新的 PostgreSQL 数据库,执行了迁移,一切都像发条一样工作。当我尝试使用 python manage.py loaddata backup.json 加载 backup.json 文件时,给了我这个错误。

Could not load contenttypes.ContentType(pk=15): duplicate key value violates unique constraint "django_content_type_app_label_76bd3d3b_uniq"
DETAIL:  Key (app_label, model)=(navigation, navigation) already exists.

我检查了phpPgAdmin,新闻有一行。有没有办法在不包括内容类型的情况下加载备份 json 文件,或者更好地转储除内容类型数据之外的所有内容?

4

1 回答 1

15

我遇到了类似的错误:

django.db.utils.IntegrityError:安装夹具'/home/knysys/ogmius/ogmius/db.json'时出现问题:无法加载contenttypes.ContentType(pk = 2):重复键值违反唯一约束“django_content_type_app_label_model_76bd3d3b_uniq”详细信息:键(app_label, model)=(auth, user) 已经存在

之后,我发现如果你从另一个数据库恢复一个新的数据库,你需要像这样转储数据

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

然后像这样加载新的数据库:

./manage.py loaddata db.json
于 2019-12-06T06:40:40.720 回答