8

我正在尝试manage.py loaddata myfixture.json故意批量覆盖我的数据库中的几条记录。但是,它给了我错误:

IntegrityError: Problem installing fixture 'myfixture.json': Could not load myapp.Person(pk=1): (1062, "Duplicate entry 'Bob' for key 'name'")

如果主键匹配现有记录,我认为 loaddata 的行为是覆盖记录?我错了,还是在 Django 1.5 中改变了?我如何让它覆盖?

4

1 回答 1

5

我找到了一种修改 Django 的 loaddata 命令以在加载时正确解析自然键并避免重新加载重复项的方法。修改后的命令在此处发布。官方加载数据之间的唯一区别是第 189-201 行。

于 2015-04-22T01:38:02.363 回答