diff --git a/safesite/views.py b/safesite/views.py index cfc98324..ba899f77 100644 --- a/safesite/views.py +++ b/safesite/views.py @@ -3542,8 +3542,14 @@ def bwlogin(req): def unbindwechat(req): userid = req.session['userid'] - User.objects.filter(userid=userid).update( - openid=None, headimgurl=None, nickname=None, mpopenid=None) + user = User.objects.get(userid=userid) + if user.mpopenid: + User.objects.filter(mpopenid=user.mpopenid).update(openid=None,headimgurl=None, nickname=None, mpopenid=None) + user.openid=None + user.headimgurl=None + user.nickname=None + user.mpopenid=None + user.save() return JsonResponse({"code": 1}) @@ -3581,8 +3587,9 @@ def mplogin(req): info = json.loads(info) mpopenid = info['openid'] session_key = info['session_key'] - if User.objects.filter(mpopenid=mpopenid).exists(): - a = User.objects.get(mpopenid=mpopenid) + objs = User.objects.filter(mpopenid=mpopenid) + if objs.exists(): + a = objs[0] userid = a.userid username = a.username req.session['userid'] = userid