qq_40185638 2019-04-14 13:47 采纳率: 0%
浏览 542
已采纳

为什么django在注册邮箱时填写的数据和录入数据库的数据不一致?

class RegisterView(View):
    """注册,类视图"""
    def get(self,request):
        return render(request,'register.html')
    def post(self,request):
        username = request.POST.get('user_name')
        password = request.POST.get('pwd')
        email = request.POST.get('email')

        allow = request.POST.get('allow')
        # 数据校验

        if not all([username, password, email]):
            return render(request, 'register.html', {'errmsg': '数据不完整'})

        if not re.match(r'^[a-z0-9][\w.\-]*@[a-z0-9\-]+(\.[a-z]{2,5}){1,2}$', email):
            return render(request, 'register.html', {'errmsg': '邮箱格式不正确'})

        if allow != 'on':
            return render(request, 'register.html', {'errmsg': '请勾选同意协议'})
        # 业务处理
        try:
            user = User.objects.get(username=username)
        except User.DoesNotExist:
            user = None
        if user:
            return render(request, 'register.html', {'errmsg': '用户已存在'})

        user = User.objects.create_user(username, password, email)

        user.is_active = 0
        user.save()
        #发送激活邮件,包含激活链接:http://127.0.0.1:8000/user/active/3
        #激活链接中需要包含用户的身份信息,并且要把身份信息加密

        #加密用户的身份信息,生成激活token
        serizer = Serializer(settings.SECRET_KEY,3600)
        info = {'confirm':user.id}
        token = serizer.dumps(info)
        token = token.decode()

        #发邮件
        send_register_active_email.delay(email,username,token)
        # 返回
        return redirect(reverse('goods:index'))
```使用Django框架编写注册页面,账户密码和邮箱录入数据库的时候,邮箱数据显示的却是密码
  • 写回答

1条回答 默认 最新

  • threenewbee 2019-04-14 13:50
    关注

    user = User.objects.create_user(username, password, email)
    这里调试输出下,看下username password获取的是什么,如果对的,那么就是数据库插入的地方错了,如果这里不对,就是前面错了,比如表单的名字搞错了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料