django开发日记1 实现注册时遇到错误不清楚表单数据

def registerView(request):

    is_register =True
    title='注册'
    pageTitle='用户注册'
    password = True
    button="获取验证码"
    sent_VCode=False

    obj = TextForm(request.POST)
    if request.method == 'POST':
        u = request.POST.get('username','')
        p = request.POST.get('password','')
        email = request.POST.get('email', '')

        if request.POST.get('getVCode',''):
            if User.objects.filter(username=u):
                tips = '用户已存在'
                return
            elif u =="":
                tips = '用户名不能为空!'
                return render(request,'user.html',locals())
            else:
                if len(p) <= 8:
                    tips = '密码位数应大于8!'
                    return render(request,'user.html',locals())
            VCodeInfo = True
            VCode = str(random.randint(100000, 999999))
            request.session['VCode'] = VCode
            email_part = email[3:]
            email_template_name = 'findpsemail.html'
            t = loader.get_template(email_template_name)
            context = [u, VCode]
            c = Context({"data": context})
            message = t.render({"data": context})
            subject = "新用户注册"
            sender = settings.EMAIL_HOST_USER
            recipient = [email]
            msg = EmailMultiAlternatives(subject, message, sender, recipient)
            msg.attach_alternative(message, "text/html")
            msg.send()
            tips = '验证码已发送,请在邮箱查收!'
        else:
            tips = '错误!'

    return render(request,'user.html', locals())

采用该方法发现提交表单后表单数据全部消失,改为自定义表单类的方法,成功实现保留表单数据。
以下:

        if obj.is_valid():
            u=obj.cleaned_data['username']
            p = obj.cleaned_data['password']
            email = obj.cleaned_data['email']

同时html代码如下

 					<div>{{ obj.username }}</div>

                        <div>{{ obj.password }}</div>

                        <div>{{ obj.email }}</div>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值