• 基于ajax的会员登录


    blog应用urls中:

    urlpatterns = [
    re_path('member/',views.member,name='member')
    ]

    views中:

    def member(request):
        res={'status':None, 'msg':None}
        if request.method == 'POST':
            username=request.POST.get('username')
            pwd=request.POST.get('pwd')
            isLogin=Member.objects.filter(username=username,pwd=pwd).first()
            if isLogin:
                res['status']= 1
                res['msg']='登录成功!'
            else:
                res['status'] = 0
                res['msg'] = '登录失败!请重新输入...'
    
            return HttpResponse(json.dumps(res))
    
        print(res)
        return render(request,'member.html')

    templates文件member.html:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            .box{
                 500px;
                margin: 200px auto;
    
            }
            #pwd{
                position: relative;
                left:2px;
            }
            #b1{
                position: relative;
                left:120px;
    
            }
            h3{
                color: rgba(253,25,146,0.75);
                position: relative;
                left:100px;
            }
        </style>
        <script src="/static/js/jquery.min.js"></script>
    </head>
    <body>
    <div class="box">
        <h3>会员登录</h3>
        <form>
            <div><span>username</span>&nbsp;&nbsp;&nbsp;<input type="text" name="username" id="username" value=""></div>
            <div style="margin-top: 5px"><span>password</span>&nbsp;&nbsp;&nbsp;<input type="password" name="pwd" id="pwd" value=""></div>
            <br>
            <input type="button" id="b1" name="dosubmit" value="登录">
        </form>
    
    </div>
    
    </body>
    <script>
        $(function () {
            $('#b1').click(function () {
                $.post("{% url 'blog:member' %}", {username:$('#username').val(),pwd:$('#pwd').val(),'csrfmiddlewaretoken':"{{csrf_token}}" }, function(data){
                if(data.status == 1){
                    alert(data.msg);
                    location="{% url 'blog:booklist' %}"
                }else {
                    alert(data.msg)
                }
                },'json')
    
            })
        })
    </script>
    </html>

    数据库模型models中:

    class Member(models.Model):
        username=models.CharField(max_length=32)
        pwd=models.CharField(max_length=70)

    注意:python manage.py makemigrations

       python manage.py migrate

  • 相关阅读:
    协程greenlet与gevent模块
    进程通信和数据共享两种方式
    创建进程的两个方式
    queue队列吃包子
    queue队列是并发利器
    创建线程方式
    threading线程进程
    socketserver实现多用户并发聊天
    socket实现图片读取
    ZYB's Biology
  • 原文地址:https://www.cnblogs.com/wshr210/p/11019244.html
Copyright © 2020-2023  润新知