コード例 #1
0
ファイル: views.py プロジェクト: heiyixueren/WhutOrderingSys
def user_register(request):
    if request.method == 'GET':
        return render(request, 'register.html')
    else:
        user_registerForm = UserRegisterForm(request.POST)
        if user_registerForm.is_valid():
            username = user_registerForm.cleaned_data['username']
            email = user_registerForm.cleaned_data['email']
            password_1 = user_registerForm.cleaned_data['password_1']
            password_2 = user_registerForm.cleaned_data['password_2']
            user_list = UserInfo.objects.filter(
                Q(student_code=username) | Q(email=email))
            if user_list:
                return render(request, 'register.html', {'msg': '学号或邮箱已注册'})
            else:
                if password_1 == password_2:
                    user = UserInfo()
                    user.student_code = username
                    user.username = username
                    user.email = email
                    user.set_password(password_1)
                    user.save()
                    # print("成功")
                    return HttpResponse(
                        "<script>alert('注册成功!请尽快登陆前往个人中心完善信息!');window.location.href='http://127.0.0.1:8000/users/user_login/'</script>"
                    )
                else:
                    return render(request, 'register.html',
                                  {'msg': '两次输入的密码不一致'})
        else:
            return render(request, 'register.html',
                          {'user_registerForm': user_registerForm})
コード例 #2
0
    def post(self, request: Request):
        ser = RegisterSerivalizer(data=request.data)
        ser.is_valid(raise_exception=True)

        username = ser.data.get('username')
        password = ser.data.get('password')
        nickname = ser.data.get('nickname')
        telephone = ser.data.get('telephone')

        try:
            UserInfo.objects.get(Q(username=username) | Q(telephone=telephone))
        except (UserInfo.DoesNotExist, UserInfo.MultipleObjectsReturned) as e:
            user = UserInfo(username=username)
            user.set_password(password)
            user.nickname = nickname
            user.telephone = telephone
            # 我们无需额外激活账号,所以注册是自动激活
            user.is_active = True
            user.save()
            logger.info(f'用户: {username} 注册成功')
            return Response(RESPONSE_SUCCESS)
        else:
            return Response(RESPONSE_FAILURE)
コード例 #3
0
    def post(self, request):
        ser = RegisterSerivalizer(data=request.data)
        ser.is_valid(raise_exception=True)

        username = ser.data.get('username')
        password = ser.data.get('password')
        ret = {'result': 'failure', 'detail': ''}

        try:
            UserInfo.objects.get(Q(username=username) | Q(telephone=username))
        except (UserInfo.DoesNotExist, UserInfo.MultipleObjectsReturned) as e:
            user = UserInfo(username=username)
            user.set_password(password)

            # 我们无需额外激活账号,所以注册是自动激活
            user.is_active = True
            user.save()
            ret['result'] = 'success'
            ret['detail'] = '注册成功'
            LOG.info('用户: %s 注册成功', username)
        else:
            ret['detail'] = '用户已注册'

        return Response(ret)