django简单用户登录验证


django简单用户登录验证css




django简单用户登录验证html

一.django简单用户登录验证
  前端页面:
    <div class="container  col-lg-6  col-lg-offset-4">
        <br><br><br><br><br>
      <form class="form-signin col-sm-4 col-lg-offset-2" action="{% url 'login' %}" role="form" method="post"> {% csrf_token %}
        <h2 class="form-signin-heading">Please sign in</h2>
        <input type="text" class="form-control" name="username" placeholder="Username" required="" autofocus="">
        <input type="password" class="form-control" name="password" placeholder="Password" required="">
        <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>

    后端验证
    from django.shortcuts import render,HttpResponseRedirect
    from django.contrib.auth import authenticate,login,logout
    from django.contrib.auth.decorators import login_required
    def acc_login(request):
    if request.method == 'POST':
        print request.method
        username = request.POST.get('username')
        passwd = request.POST.get('password')
        user = authenticate(username=username,password=passwd)
        print 'username:%s \n passwd:%s \n user:%s' %(username,passwd,user)
        if user is not None:#pass authtencation
            login(request,user)
            return HttpResponseRedirect('/')
        else:
            return render(request,'login.html',{
                'login_err':"Wrong username or password!"
            })
    else:
        return render(request,'login.html')
from django.contrib.auth import authenticateuser = authenticate(username='john', password='secret')if user is not None:
    # the password verified for the user
    if user.is_active:
        print("User is valid, active and authenticated")
    else:
        print("The password is valid, but the account has been disabled!")else:
    # the authentication system was unable to verify the username and password
    print("The username and password were incorrect.")
    
    来源:http://python.usyiyi.cn/django/intro/tutorial02.html



首页中登陆/退出按钮前端

  {% if  request.user.is_authenticated  %}
<ul class="nav navbar-nav navbar-right">
    <li class="dropdown-toggle"  data-toggle="dropdown">
        <a href="{% url 'login' %}">
            {{ request.user.userprofile.name }}
            <span class="caret"></span>
        </a>
    </li>
    <ul class="dropdown-menu" role="menu">
      <li><a href="{% url 'logout' %}">Logout</a></li>
    </ul>
</ul>
  {% else %}
<ul class="nav navbar-nav navbar-right">
  <li><a href="{% url 'login' %}">Login</a></li>
</ul>
  {% endif %}


<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse dropdown" id="bs-example-navbar-collapse-1">

         {% if  request.user.is_authenticated  %}
        <ul class="nav navbar-nav navbar-right">
            <li class="dropdown-toggle"  data-toggle="dropdown">
                <a href="{% url 'login' %}">
                    {{ request.user.userprofile.name }}
                    <span class="caret"></span>
                </a>
            </li>

            <ul class="dropdown-menu" role="menu">
              <li><a href="{% url 'logout' %}">Logout</a></li>
            </ul>
        </ul>
      {% else %}
         <ul class="nav navbar-nav navbar-right">
          <li><a href="{% url 'login' %}">Login</a></li>
            {% endif %}
         </ul>


</div>
<!-- /.navbar-collapse -->