前景
嗨。我正在将Django应用程序数据库上传到我的Heroku生产环境中。当我尝试manage.py loaddata
时,出现以下错误:
django.db.utils.IntegrityError:安装固定装置时出现问题:在表“ catalog_contactos”中插入或更新违反了键约束。
我在这篇文章中发现有人建议您首先加载作为外键基础的模型:related post
我还发现了这篇文章,它涉及将数据库移至另一个应用程序(例如生产版本)。基本上说:
使用dumpdata命令备份整个数据库时,它将 备份所有数据库表
如果您使用此数据库转储来加载新数据库(在另一个数据库中 django专案),可能会导致IntegrityError(如果您在 相同的数据库,效果很好)
要解决此问题,请确保通过排除以下内容来备份数据库 contenttypes和auth.permissions表
我的代码
遵循我的建议:
python manage.py dumpdata --exclude auth.permission --exclude contenttypes > data.json
然后在服务器上运行以下代码并获得完整性错误:
heroku run python manage.py loaddata data.json
我应该dumpdata
逐个建模并按一定顺序loaddata
进行建模吗?还是我编码有误?有任何线索吗?
谢谢!
更新
此“自然键”问题是否可以解决? Django serializing objects
答案 0 :(得分:0)
当django / postgreSQL出现完整性错误时,我在postgreSQL中做了DROP TABLE表。