PostgreSQL 加载 back.json 文件时出现重复键问题

TJB*_*TJB 5 django postgresql loaddata dumpdata

我有一个 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.
Run Code Online (Sandbox Code Playgroud)

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

ARK*_*han 12

我收到类似的错误:

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
Run Code Online (Sandbox Code Playgroud)

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

./manage.py loaddata db.json
Run Code Online (Sandbox Code Playgroud)


Ras*_*kov 6

您可以使用以下命令来加载数据:

python manage.py loaddata --exclude auth.permission --exclude contenttypes back.json
Run Code Online (Sandbox Code Playgroud)