请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于重写authenticate方法 用户名不存在的问题

重写authenticate方法后 使用UserProfile.objects.get(Q(username=username)|Q(email=username)) 方法 判断
可是 我测试当用户名或者邮箱都不存在的情况,就报错了 用filter方法 则正常

图片描述

正在回答

1回答

django的get是从数据库的取得一个匹配的结果,返回一个对象,如果记录不存在的话,它会报错。 filter则是以列表的方式获取

0 回复 有任何疑惑可以回复我~
  • 提问者 哎一古91 #1
    那用户名或者邮箱不存在的情况 应该怎么处理
    回复 有任何疑惑可以回复我~ 2019-01-30 08:35:03
  • Ethreal 回复 提问者 哎一古91 #2
    用get的话就要用try except 捕获异常处理, filter查询不到就是空列表 if not 判断是不是空就行了,课程对这些也有详细描述
    回复 有任何疑惑可以回复我~ 2019-01-30 10:28:07
  • 提问者 哎一古91 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-02-01 08:55:05
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号