调用AuthenticationForm 之后我们不用再使用 authenticate()这个方法了
下图中画圈部分 已经帮我们实现了
所以 两个验证都不用自己写,直接判断一个 is_valid就能知道 有没有成功登陆

我们写成下面这样就ok

from django.shortcuts import render
from django.http import HttpResponse
from django.contrib.auth.models import User
from django.contrib import auth
from django.contrib.auth import forms
from django.views.decorators.csrf import csrf_exempt
from django.contrib.auth.decorators import login_required@csrf_exempt                 // 这是用来解决 ---> 打开浏览器访问该视图时一直报错:”没有 csrf 保护“
def login(request):if request.method == 'GET':return render(request,'login_form.html',{'loginForm':forms.AuthenticationForm})if request.method == 'POST':loginForm = forms.AuthenticationForm(data=request.POST)if loginForm.is_valid():     // 这个步骤必须要有 ,无论是 什么那种Form  不下面 的 cleaned_data 报错:has no attirbutes like cleaned_data# name = loginForm.clean()['username']# password = loginForm.clean()['password']# user = auth.authenticate(username=name,password=password)# if user is not None:#     if user.is_active:user = loginForm.get_user()auth.login(request,user)return HttpResponse("seccessfully logged in .")# else:# return HttpResponse("user is not active.")# else:# return HttpResponse("user is None: "+name+"  "+password)else:return render(request,'login_form.html',{'loginForm':loginForm})

它会自己反馈有哪些地有错,密码不正确等等,
Note:但是有个问题就是,无论时密码错误还是用户名不存在,它都会还会同样的反馈error信息,所以需要自定义表单。

Django 表单 AuthenticationFrom自动检测user的name 和 password , has no attributes cleaned_data相关推荐

  1. django一个html先后两个form,Django教程(三)- Django表单Form

    目录: 1.Form 基本使用 django中的Form组件有以下几个功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 2.Form中 ...

  2. 第三十篇,Django表单与模型

    什么是表单: 表单是搜集用户数据信息的各种表单元素的集合,作用是实现网页上的数据交互,用户在网站输入信息,然后提交到网站服务器端进行处理(如数据录入和用户登录.注册等). 用户表单是web开发的一项基 ...

  3. Web开发-Django表单

    Django表单 简述 虽然在Django的核心组件中没有看到表单的影子,但是熟悉Web开发的都知道,表单控制是至关重要的. 表单一般放在某个app目录下的forms.py文件中. 基本操作 表单绑定 ...

  4. 关于表单回车自动提交的讨论

    关于表单回车自动提交的讨论 在做超限查询时,为了用户操作的易用性,在用户输入车牌号码后,直接回车就进行查询的操作,而不是等用户用鼠标点击"查询"了才发送请求去查询.可能我们都以为很 ...

  5. Django从理论到实战(part48)--Django表单

    学习笔记,仅供参考,有错必纠 参考自:某网课 文章目录 Django表单 Django表单概述 HTML中的表单 Django中的表单 Django中表单使用流程 表单验证 常用的Field 常用验证 ...

  6. python django 表单_Django ModelForm与Form

    django表单系统中,所有的表单类都作为django.forms.Form的子类创建,包括ModelForm 关于django的表单系统,主要分两种 基于django.forms.Form 基于dj ...

  7. Java POJO Bean 对象与 Web Form 表单的自动装配

    PS: 我一直在找寻为什么 struts2有自动将form字段和getter setter 自动 匹配的功能, 这篇文章解答了我的疑惑 深度剖析:Java POJO Bean 对象与 Web Form ...

  8. 7Python全栈之路系列之Django表单

    Python全栈之路系列之Django表单 从Request对象中获取数据 HttpRequest对象包含当前请求URL的一些信息: 熟悉/方法 描述 例如 request.path 除域名以外的请求 ...

  9. Django 表单验证之自定义表单验证器

    本文基于Django 表单验证 一文,补充完善表单验证器之自定义表单验证器 具体步骤总结如下: 第一:在formValidation.py 文件中,添加自定义名称敏感验证器(NameValidatio ...

  10. 泛微html模板与表单分离,泛微eteams业务表单,自动生成数据和报表

    原标题:泛微eteams业务表单,自动生成数据和报表 eteams业务表单用数据重新定义协作,台帐记录.数据汇报.外部调研收集一并搞定.彻底告别传统纸笔数据收集方式,实时完成数据提交,自动生成数据和报 ...

最新文章

  1. Docker官方文档翻译4
  2. 小议Python3的原生协程机制
  3. golang string 转换 uint64_Golang 的 #x27;print#x27; 源码解读
  4. Android:日常学习笔记(8)———探究UI开发(5)
  5. P3804 【模板】后缀自动机 (SAM)
  6. 软件工程 案例分析作业
  7. python 登录接口_使用python编写一个登录接口
  8. 使用@RequestParam注解和泛型遇到的问题
  9. .NET环境下水晶报表使用总结
  10. restfull api 接口 规范
  11. 拼多多上线直播、火车票业务引关注,回应:仅是两个服务插件
  12. NFT交易平台Mintable首个提案通过 收入将按比例分配给MINT代币持有者
  13. Kubernetes详解(十)——Pod对象高级控制命令
  14. linux中安装多个mysql_Linux环境中安装多个MySQL服务笔记
  15. 阿里云智能基础产品事业部招聘高性能计算云产品研发与优化专家/高级专家
  16. Flash 用FLASH遮罩效果做图片切换效果
  17. 大学生计算机考试PPT制作,计算机等级考试制作PPT表格
  18. Mac OS 下的Vim使用系统剪切板
  19. CAN总线错误分析方法
  20. 四, Scala 伴生对象, 特质

热门文章

  1. 基于51单片机及MAX6675的8通道测温系统 protues仿真
  2. 跳槽最大原因不是为钱,你信吗?
  3. 数组中除一个元素外其他所有元素出现二或三次,找到只出现一次的元素
  4. windows server 2008安装配置web服务器
  5. 2022-2028年全球及中国ODM智能手机行业投资前景分析
  6. Windows桌面图标缓存
  7. redis集群节点宕机
  8. 数值策划科普-------阈值
  9. 计算机定时关机计划任务失败,如何设置定时关机任务?电脑设置定时关机任务方法...
  10. 半导体随机存储器(random access memory)