django admin 添加用户出现外键约束错误

Posted welisit

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django admin 添加用户出现外键约束错误相关的知识,希望对你有一定的参考价值。

今天在做mxonline项目时,注册了用户表进admin后,想在后台添加一个用户试试,结果出现了错误,经过一番搜索发现以下两个解决方法,不过我只用了一种

报错信息:

IntegrityError: (1452, u‘Cannot add or update a child row: a foreign key constraint fails (`mxonline`.`django_admin_log`, CONSTRAINT `django_admin_log_user_id_c564eba6_fk_auth_user_id` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`))‘)

具体解决方法:

方法1:在settings.py文件中,数据库的配置参数中设置关闭外键检查

DATABASES = {
    default: {
        ENGINE: django.db.backends.mysql,
        NAME: "mxonline",
        USER: "root",
        PASSWORD: "123",
        HOST: ‘‘,
        OPTIONS: {
            "init_command": "SET foreign_key_checks = 0;",
        }
    }
}

方法2:将userprofile表中的数据复制 到auth_user表中,即可生成新用户。

 

参考链接:

https://www.imooc.com/wenda/detail/382273

https://www.cnblogs.com/shijieli/p/10529419.html

 

以上是关于django admin 添加用户出现外键约束错误的主要内容,如果未能解决你的问题,请参考以下文章

Django admin禁用外键下拉但保留添加按钮旁边

django admin中的外键表单字段

Django 2.0:sqlite IntegrityError:外键约束失败

在 mysql 表上添加外键约束时出现错误 1005

完整性约束违规:1452 无法添加或更新子行:外键约束失败

Django“无法添加或更新子行:外键约束失败”