ฉันมีปัญหาในการโหลดโปรแกรม Django ลงในฐานข้อมูล MySQL เนื่องจากความขัดแย้งของประเภทเนื้อหา ก่อนอื่นฉันลองทิ้งข้อมูลจากแอปของฉันเท่านั้นดังนี้:
./manage.py dumpdata escola > fixture.json
แต่ฉันยังคงได้รับปัญหาคีย์ต่างประเทศหายไปเนื่องจากแอป "escola" ของฉันใช้ตารางจากแอปพลิเคชันอื่น ฉันยังคงเพิ่มแอปพลิเคชันเพิ่มเติมจนกว่าจะถึงสิ่งนี้:
./manage.py dumpdata contenttypes auth escola > fixture.json
ตอนนี้ปัญหาคือการละเมิดข้อ จำกัด ต่อไปนี้เมื่อฉันพยายามโหลดข้อมูลเป็นอุปกรณ์ทดสอบ:
IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2")
ดูเหมือนว่าปัญหาคือ Django กำลังพยายามสร้างประเภทเนื้อหาแบบไดนามิกโดยมีค่าคีย์หลักที่แตกต่างกันซึ่งขัดแย้งกับค่าคีย์หลักจากฟิกซ์เจอร์ สิ่งนี้ดูเหมือนจะเหมือนกับข้อบกพร่องที่บันทึกไว้ที่นี่: http://code.djangoproject.com/ticket/7052
ปัญหาคือวิธีแก้ปัญหาที่แนะนำคือทิ้งแอปประเภทเนื้อหาที่ฉันทำอยู่แล้ว!? สิ่งที่ช่วยให้? หากสร้างความแตกต่างฉันมีสิทธิ์แบบจำลองที่กำหนดเองตามที่ระบุไว้ที่นี่: http://docs.djangoproject.com/en/dev/ref/models/options/#permissions
-e contenttypes -e auth.permission
ด้วย--natural
? ฉันเพิ่งลองโดยไม่มี--natural
ตัวเลือกและมันได้ผล นอกจากนี้เอกสารที่นี่ยังระบุว่าควรใช้ตัวเลือกนี้หากDUMPINGauth.permission
และcontenttypes
.