Cannot add or update a child row: a foreign key constraint fails

在使用Django添加用户时出现报错:

1 django.db.utils.IntegrityError: (1452, 'Cannot add or update a child row: a foreign key constraint fai
2 ls (`cms`.`app01_book_author`, CONSTRAINT `app01_book_author_book_id_df0ca405_fk_app01_book_id` FOREIG
3 N KEY (`book_id`) REFERENCES `app01_book` (`id`))')
4 [31/Mar/2019 21:20:45] "GET /addbook/ HTTP/1.1" 500 216210

解决办法,需要在setting.py文件的databases中取消外键检查:

复制代码
 1 DATABASES = {
 2     'default': {
 3 
 4         'ENGINE': 'django.db.backends.mysql',
 5 
 6         'NAME': 'cms',  # 你的数据库名称
 7 
 8         'USER': 'root',  # 你的数据库用户名
 9 
10         'PASSWORD': '123456',  # 你的数据库密码
11 
12         'HOST': '',  # 你的数据库主机,留空默认为localhost
13 
14         'PORT': '3306',  # 你的数据库端口
15         'OPTIONS': {
16             "init_command": "SET foreign_key_checks = 0;",  # 取消外键检查
17         }
18     }
19 }
复制代码

问题解决!!!

 

posted @   陈彦斌  阅读(1883)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示
主题色彩