zoukankan      html  css  js  c++  java
  • Django user authenticate 登录验证

    Django视图函数

    view视图函数
    from django.shortcuts import render,redirect
    from django.contrib.auth import authenticate,login,logout
    
    def acc_login(request):
        “登录验证”’
        error_msg = ''
        if request.method == "POST":
            username = request.POST.get('username')
            password = request.POST.get('password')
        
            user = authenticate(username=username,password=password)
            # 用户去做验证
            if user:
                print("passed authencation",user)
                login(request,user)  # 登录可以显示用户
                #request.user = user
    
                return  redirect( request.GET.get('next','/') )
            else:
                error_msg = "Wrong username or password!"
        return render(request, 'login.html', {'error_msg':error_msg})
    
    
    def acc_logout(request):
        #退出
        logout(request)
        return redirect("/login/")

    Django 前端

    <div class="container">
    
          <form class="form-signin" method="post">{% csrf_token %}
            <h2 class="form-signin-heading">PerfectCRM</h2>
            <label for="inputEmail" class="sr-only">Username</label>
            <input type="text" id="" name="username" class="form-control" placeholder="Username" required autofocus>
            <label for="inputPassword" class="sr-only">Password</label>
            <input type="password" name="password" class="form-control" placeholder="Password" required>
             <span style="color: red">{{ error_msg }}</span>
            <div class="checkbox">
              <label>
                <input type="checkbox" value="remember-me"> Remember me
              </label>
            </div>
            <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
          </form>
    
    </div> <!-- /container -->
    

      如果想给每条视图函数加验证只需要导入

      from django.contrib.auth.decorators import login_required

      给每个视图函数加上@login_required

     

     

  • 相关阅读:
    会议开饭
    计算时间差(c#和sqlServer)
    sqlserver 新增表字段
    javascript刷新父页面的各种方法汇总
    java 从List中随机取出一个元素
    解决Appium 抓取toast(java篇)
    appium java-client 5.0以后移除了swipe方法,也就是无法使用driver.swipe()了
    appium怎么按下系统按键?如按下返回键、home键等等
    Android 常用 adb 命令总结
    appium Capabilities的各个标签
  • 原文地址:https://www.cnblogs.com/sunkai1993/p/6827848.html
Copyright © 2011-2022 走看看