一:Django中自带着登录,验证功能不用自己再去写登录功能。

1、从相应模块导入组件功能

from django.contrib.auth import authenticate,login

2、从request中拿到用户名密码,验证,验证通过获取到用户对象,不通过为None。

        username = request.POST.get("username")
password = request.POST.get("password")
user = authenticate(username=username,password=password)

3、通过之后登录用户,涉及到session操作

        if user:
# 登录,此时生成了session
login(request,user)
return redirect("/crm/")
else:
print("no pass")

二:Django中自带注销用户功能。

1、注销标签

<li><a href="{% url 'logout' %}">注销</a></li>
{% url 'logout' %} 表示url中名字为logout的,即name='logout'

2、注销view函数

from django.contrib.auth import authenticate,login,logout

def acc_logout(request):
logout(request) # 注销
return redirect("/login/") # 页面跳转

三:登录时用户名或者密码出错时,显示错误提示信息:

1、前端页面

            <span style="color: red">{{ error_msg }}</span>

2、后台处理,加上错误信息

    error_msg = ''      # 正确时
error_msg = 'Wrong username or password!'
print(username,password)
return render(request,"login.html",{"error_msg":error_msg})# 错误时

四:没有登录时,不能进入主页面,只能跳转到登录页面

具体的哪个视图函数需要,加在哪个视图函数上

from django.contrib.auth.decorators import login_required
@login_required
def dashboard(request):
return render(request,"crmapp/dashboard.html")

这样没有登录,直接访问连接到该视图函数的url时,会跳转到Django自带的登录页面。

需要在settings中配置,

LOGIN_URL = '/login/'

  注意url中的next参数:http://127.0.0.1:8080/login/?next=/crm/,表示登录成功后跳转到哪个页面。

Django登录与注销的更多相关文章

  1. django 登录注册注销

    一.设计数据模型 1.数据库模型设计 作为一个用户登录和注册项目,需要保存的都是各种用户的相关信息.很显然,我们至少需要一张用户表User,在用户表里需要保存下面的信息: 用户名 密码 邮箱地址 性别 ...

  2. django用户登录和注销

    django版本:1.4.21. 一.准备工作 1.新建项目和app [root@yl-web-test srv]# django-admin.py startproject lxysite [roo ...

  3. Django实战(22):处理登录和注销

    我们已经可以在view函数中判断用户是否已经登录以及获取用户信息: if request.user.is_authenticated(): #判断用户是否已登录 user = request.user ...

  4. Django 后台管理 之登录和注销

    Session:     session是服务器端生成保存的一个键值对 , session内部机制依赖于cookie . 用户登录后返回给客户端一个随机字符串,客户端带着随机字符串访问服务器,用于验证 ...

  5. Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用

    概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...

  6. iOS开发——网络编程OC篇&(二)XMPP实现用户登录与注销

    XMPP实现用户登录与注销 登录: 步骤: * 在AppDelegate实现登录 1. 初始化XMPPStream 2. 连接到服务器[传一个JID] 3. 连接到服务成功后,再发送密码授权 4. 授 ...

  7. Shiro 整合SpringMVC 并实现权限管理,登录和注销

    Shiro 整合SpringMVC 并且实现权限管理,登录和注销 Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比Spring S ...

  8. 背水一战 Windows 10 (84) - 用户和账号: 微软账号的登录和注销

    [源码下载] 背水一战 Windows 10 (84) - 用户和账号: 微软账号的登录和注销 作者:webabcd 介绍背水一战 Windows 10 之 用户和账号 微软账号的登录和注销 示例演示 ...

  9. Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用

    转自:https://www.cnblogs.com/keepfool/p/5665953.html 概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST AP ...

随机推荐

  1. rocketmq 4.2.0集群配置

    采用的是2m-2s-async模式 1.  修改每台机器的/etc/hosts  文件,增加如下内容 192.168.1.100 nameserver1192.168.1.102 nameserver ...

  2. torch分类问题

    import torch from torch.autograd import Variable import torch.nn.functional as F import matplotlib.p ...

  3. Web从入门到放弃<2>

    <添加debug-toolbar> django现在1.11是必须这么做: pip install django-debug-toolbar 设置1: INSTALLED_APPS = [ ...

  4. java 运算符的了解和运算符的优先级

    Java 语言支持如下运算符: 算术运算符: +,-,*,/,%,++,-- 赋值运算符 = 扩展赋值运算符:+=,-=,*=,/= 关系运算符: >,<,>=,<=,==,! ...

  5. C#+EntityFramework编程方式详细之Code First

    Code First Code First模式即“代码优先”模式,是从EF4.1开始新建加入的功能.使用Code First模式进行EF开发时只需要编写对应的数据类,然后自动生成数据库. Code F ...

  6. An overview of network penetration testing

    1. an SQLi vulnerability will allow you  to do the  following query the database using select statem ...

  7. Jmeter性能测试之进阶BeanShell的使用

    BeanShell 最常用的用法 写好Java代码打成jar, 放到目录\lib\ext下面 package com.test; import java.io.File; import java.io ...

  8. 基于Python+Django重定向的例子

    Django源码, 这里HttpResponseRedirect和HttpResponsePermanentRedirect没有太大差别,前者是返回302临时重定向,后者返回301永久重定向 clas ...

  9. 金蝶k/3 K3云之家消息查询发送是否成功SQL语句

    金蝶k/3 K3云之家消息查询发送是否成功SQL语句 1是成功,0是还在轮询中未发送,4是发送失败 select * into #tempUserID from ( union select t_Gr ...

  10. Java 模板模式

    定义:定义了一个算法的骨架,并允许子类为一个或多个步骤提供实现 模板方法使得子类可以在不改变算法的结构的情况下,重新定义算法的某些步骤 类型:行为型 一次性实现一个算法的不变的部分,并将可变的行为留给 ...