django blog注册

创建HTML页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册</title>
 <script type="text/javascript" src="/static/js/jquery-1.11.1.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#username").blur(function () {
                var name=$(this).val()
                var csrf=$('input[name="csrfmiddlewaretoken"]').val()
                $.ajax({
                    url:"/myblog/hasname",
                    type:"post",
                    data:{"username":name,"csrfmiddlewaretoken":csrf},
{#                    dataType:"String",#}
                    success:function (result) {
                        //alert(result)
                        $("#mess").html(result);
                    }

                    });

                });

                });




    </script>
</head>
<body>
<form action="/myblog/regist" method="post">
    {% csrf_token %}
    用户名:<input type="text" name="username" id="username"><br/><span id="mess">{{ mess }}</span>
    密码:<input type="password" name="pwd"><br/>
    <input type="submit" value="注册">

</form>
</body>
</html>
写函数:
 
 
def regist(request):
    if request.method=='GET':
        return render(request,"注册.html")
    else:
        #获取用户名和密码
        uname=request.POST.get("username")
        pwd=request.POST.get("pwd")
        #导入models模块后
        bloguser=BlogUser()
        bloguser.userName=uname
        bloguser.pwd=pwd
    try:
        bloguser.save()

        #return render(request,"成功.html",{'bloguser':bloguser})
        return redirect(reverse("user:show",args=[bloguser.id]))
    except:
        return render(request,"注册.html",{"mess":"用户名已存在"})
def show(request,id):
    bloguser=BlogUser.objects.get(pk=id)
    return render(request,'成功.html')

@csrf_protect
def hasname(request):
    username = request.POST.get("username")
    blogUser = BlogUser.objects.filter(userName=username)
    print('--------',blogUser)
    if len(blogUser) > 0:
        return HttpResponse("用户名已存在")
    else:
        return HttpResponse("用户名可用")

写路径:
 
 
HTML页面用了了ajax实现了简单的注册功能,
表单提交记住要写{% csrf_token %}

猜你喜欢

转载自blog.csdn.net/lt0318aa/article/details/79932066
今日推荐