Tôi đang cố gắng làm manage.py loaddata myfixture.json
để cố ý ghi đè hàng loạt một số bản ghi trong cơ sở dữ liệu của mình. Tuy nhiên, nó cho tôi lỗi:Làm thế nào để ngăn chặn đồ đạc Django xung đột với dữ liệu hiện có
IntegrityError: Problem installing fixture 'myfixture.json': Could not load myapp.Person(pk=1): (1062, "Duplicate entry 'Bob' for key 'name'")
Tôi nghĩ hành vi của loaddata là ghi đè lên các bản ghi nếu khóa chính khớp với bản ghi hiện có? Tôi có sai, hay điều này đã thay đổi ở Django 1.5? Tôi làm cách nào để ghi đè lên?
bạn có chắc chắn các kết quả khớp chính không? bạn có thể đăng một phần cho Bob từ myfixture.json không? bạn có chắc Bob trong db có pk = 1 không? – fsw
Bạn đã thử tạo vật cố định bằng các phím tự nhiên (dumpdata - tự nhiên) chưa? – DimmuR