后台管理修改用户Profile时,出现外键关联报错

后台管理修改用户Profile时,出现外键关联报错

后台管理修改用户Profile时,出现外键关联报错

相关截图:

accounts/models.py

http://img1.sycdn.imooc.com//climg/60803b170936823f00000000.jpg

accounts/admin.py

http://img1.sycdn.imooc.com//climg/60803b2409f4c9e910360471.jpg


http://img1.sycdn.imooc.com//climg/60803b2409fb026b13630549.jpg


http://img1.sycdn.imooc.com//climg/60803b2409c6d0b113460485.jpg


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好!报错信息为"无法添加或更新子行:外键约束失败"。同学可以看下修改的id为1的记录对应的user用户是否存在

http://img1.sycdn.imooc.com//climg/6080e2e80900796c10780110.jpg

祝学习愉快!

  • 慕慕7351968 提问者 #1

    在浏览器通过项目注册的用户,其信息添加到了account_user表和account_user_profile表中,并未添加到auth_user表中,报错也是因为有字段外键关联到auth_user表。请问是不是因为扩展Django自带用户模型时有问题,才导致注册用户并没有使用到auth_user表?

    2021-04-22 11:00:52
  • 好帮手慕美 回复 提问者 慕慕7351968 #2

    同学,你好!

    1、是的,同学可以在navicat图形界面中,右击account_user_profile选择设计表,点击外键,看下有几个外键关联

    http://img1.sycdn.imooc.com//climg/6080ee36090a60eb07290168.jpg

    2、同学可以删除相应的表文件及迁移记录(migrations下除__init__.py之外的文件​),重新生成并执行迁移(python manage.py makemigrations,python manage.py migrate),并添加相应的用户和详细信息后,看是否可以正常修改。

    祝学习愉快!

    2021-04-22 11:32:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师