def register(request: HttpRequest) -> HttpResponse: """注册""" hint = '' if request.method == 'POST': agreement = request.POST.get('agreement') if agreement == 'on': code_from_user = request.POST.get('mobilecode','0') code_from_sess = request.session.get('mobilecode','1') if code_from_user == code_from_sess: username = request.POST.get('username') password = request.POST.get('password') tel = request.POST.get('tel') if check_username(username): if check_password(password): if tel: user = User() user.username = username user.password = gen_md5_digest(password) user.tel = tel try: user.save() except DatabaseError: hint = '用户或手机号已被注册,请尝试其他的用户名或手机号' else: hint = '注册成功,请登录' return redirect(f'/login/?hint={hint}') else: hint = '电话号码错误' else: hint = '密码少于8位' else: hint = '用户名少于6位数' else: hint = '请输入正确的手机验证码' else: hint = '请勾选同意网站用户协议及隐私政策' return render(request, 'register.html', {'hint': hint})