用户注册案例(views写法)验证码

2018-03-09  本文已影响0人  两点半的杂货铺

一、验证码

准备工作分别需要两个文集一个是check_code.py文件,一个是Monaco.ttf字体文件
验证码的思路,利用htmlsrc属性直接可以读取对应的连接展示在页面上,所以单独把验证码写成一个连接请求用来返回

from io import BytesIO
#验证码
def check_code(request):
    stream = BytesIO()
    img,code = create_validate_code()
    img.save(stream,'PNG')
    request.session['CheckCode'] = code
    return HttpResponse(stream.getvalue())

二、注册的逻辑

def register(request):
    if request.method == "GET":
        obj_regiser = account.accountform(request)
        return render(request,'register.html',{'obj_register':obj_regiser})
    elif request.method == "POST":
        ret = {'status':True,'message':None}
        obj_regiser = account.accountform(request,request.POST,request.FILES)
        if obj_regiser.is_valid():
            UserDate = obj_regiser.cleaned_data
            models.UserInfo.objects.create(
                username = UserDate['username'],
                password = UserDate['password'],
                nickname = UserDate['nickname'],
                email = UserDate['email'],

            )
        else:
            ret['status'] = False
            ret['message'] = obj_regiser.errors
        return HttpResponse(json.dumps(ret))

上一篇 下一篇

猜你喜欢

热点阅读