由于内容类型冲突,我无法将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
问题是建议的解决方法是转储我已经在做的contenttypes应用!是什么赋予了?如果有什么不同,我确实有一些自定义模型权限,如此处记录:http : //docs.djangoproject.com/en/dev/ref/models/options/#permissions
-e contenttypes -e auth.permission
与一起使用--natural
?我只是尝试了没有--natural
选择,它的工作。同样,这里的文档说,如果DUMPINGauth.permission
和,则应该使用此选项contenttypes
。