Tôi đang gặp sự cố khi tải các đồ đạc Django vào cơ sở dữ liệu MySQL của mình do xung đột kiểu nội dung. Đầu tiên, tôi đã thử kết xuất dữ liệu chỉ từ ứng dụng của mình như thế này:
./manage.py dumpdata escola > fixture.json
nhưng tôi vẫn gặp sự cố thiếu khóa ngoại vì ứng dụng "escola" của tôi sử dụng bảng từ các ứng dụng khác. Tôi tiếp tục thêm các ứng dụng bổ sung cho đến khi tôi nhận được điều này:
./manage.py dumpdata contenttypes auth escola > fixture.json
Bây giờ vấn đề là vi phạm ràng buộc sau khi tôi cố gắng tải dữ liệu dưới dạng một vật cố định thử nghiệm:
IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2")
Có vẻ như vấn đề là Django đang cố gắng tạo lại động các loại nội dung với các giá trị khóa chính khác nhau xung đột với các giá trị khóa chính từ cố định. Điều này có vẻ giống như lỗi được ghi lại ở đây: http://code.djangoproject.com/ticket/7052
Vấn đề là cách giải quyết được đề xuất là hủy ứng dụng contenttypes mà tôi đang làm !? Đưa cái gì? Nếu nó tạo ra bất kỳ sự khác biệt nào, tôi có một số quyền đối với mô hình tùy chỉnh như được ghi lại ở đây: http://docs.djangoproject.com/en/dev/ref/models/options/#permissions
-e contenttypes -e auth.permission
với--natural
? Tôi chỉ thử mà không có--natural
tùy chọn và nó đã hoạt động. Ngoài ra tài liệu ở đây cho biết người ta nên sử dụng tùy chọn này nếu DUMPINGauth.permission
vàcontenttypes
.