首页 文章

Django:loaddata更新数据

提问于
浏览
6

我有一个夹具 seed_data.json ,我有我的初始数据 .

有时我会在这个灯具中添加新数据并重新加载,这会正确地更新我的数据 .

但是,我现在想从中删除一些数据 . 所以我修改了我的 seed_data.json ,例如,我有类似的东西:

{"fields": {"name": "Field 0"},"model": "catalog.product","pk": 1},
{"fields": {"name": "Field 1"},"model": "catalog.product","pk": 2},
{"fields": {"name": "Field 2"},"model": "catalog.product","pk": 3},
# ...

那成了:

{"fields": {"name": "Field 1"},"model": "catalog.product","pk": 1},
{"fields": {"name": "Field 2"},"model": "catalog.product","pk": 2},
# ...

但我得到了:

django.db.utils.IntegrityError: Problem installing fixture .....\seed_data.json

Could not load catalog.Product(pk=2): column name is not unique

因此在添加一些数据时没有问题,但在尝试删除某些数据时,主键存在冲突 .

我怎样才能实现我想做的事情?

1 回答

  • 3

    Fixtures仅用于全新数据库实例的初始数据,例如运行测试时 . 要修改现有数据,请使用迁移 .

相关问题