Django form验证
# 模版
class LoginForm(forms.Form):
# 模版中的元素
user = forms.CharField(min_length=6,error_messages={"required": '用户名不能为空','min_length': '用户名长度不能小6'})
email = forms.EmailField(error_messages={"required": '邮箱不能为空','invalid': '邮箱格式错误'}) def login(request):
if request.method == "GET":
# 数据库中获取
obj = LoginForm()
return render(request,'login.html',{'oo': obj})
elif request.method == "POST":
"""
obj = LoginForm(request.POST)
# 验证
status = obj.is_valid()
print(status) value_dict = obj.clean()
print(value_dict) error_obj = obj.errors.as_json()
print(error_obj)
"""
obj = LoginForm(request.POST)
if obj.is_valid():
value_dict = obj.clean()
print(value_dict)
# create(**value_dict)
else:
# 封装了所有的错误信息
# print(obj.errors['email'][0])
# print(obj.errors["user"][0])
# print(type(error_obj))
from django.forms.utils import ErrorDict
pass return render(request, 'login.html',{'oo': obj})
<form method="POST" action="/login.html">
<p>
{{ oo.user }}
<span>{{ oo.errors.user.0 }}</span> </p>
<p>
{{ oo.email }}
<span>{{ oo.errors.email.0 }}</span>
</p>
<p>
<input type="text" name="pwd" placeholder="密码" />
</p>
<input type="submit" value="提交" /> {{ msg }}
<input id="ajax_submit" type="button" value="Ajax提交" />
</form>
Django的Form验证
- 控诉:
a. 用户提交数据的验证
1、创建模版 class LoginForm(forms.Form):...
2、将请求交给模版,创建一个对象 obj = LoginForm(request.POST)
3、进行验证 obj.is_valid()
4、获取正确信息 obj.clean()
5、获取错误信息 obj.errors
b. 错误信息提示
Form提交,刷新页面的特性,模版对象内部值丰富,再显示时,值和错误信息都有 c. 保留上一次提交的数据
1、自动生成html标签
2、保留上一次提交的数据 注:
Form使用 a,b,c
ajax使用 a,错误信息处理: as_json() as_data() 问题:
1、有没有其他的限制,可不可以自定制
2、生成各种标签
3、显示默认值 http://www.cnblogs.com/wupeiqi/articles/6144178.html
Django form验证的更多相关文章
- [py][mx]django form验证-给db减压
django form认证-解压db压力 一般系统都需要前后端都验证 前端验证容器逃逸破解,如通过js console口去发 试想如果后端只有db验证,那么前端无论发什么后端都查询一次db,对db压力 ...
- 关于django form验证是否用户名已存在
想通过django的Form模块进行数据库中是否已存在用户名的验证,首先我先调用了数据库用户名字段所有的值,发现是个queryset对象. 随后经过查询后发现queryset查询集对象可以调用list ...
- Django 进阶篇之 Form验证
Django Form验证 在实际的生产环境中比如登录和验证的时候,我们一般都使用Jquery+ajax来判断用户的输入是否为空,假如JS被禁用的话,咱们这个认证屏障是不是就消失了呢?(虽然一般不会禁 ...
- django的form验证机制
今天遇到了一个奇怪的问题,django中formview一直返回200,但是却没有执行form_valid方法,然后在其中加了一个form_invalid方法: class StudentRegist ...
- Python Web框架篇:Django Form组件
Form简介 在HTTP中,表单(form标签),是用来提交数据的,其action属性说明了其传输数据的方法:如何传.如何接收. 访问网站时,表单可以实现客户端与服务器之间的通信.例如查询,就用到了表 ...
- django form表单验证
一. django form表单验证引入 有时时候我们需要使用get,post,put等方式在前台HTML页面提交一些数据到后台处理例 ; <!DOCTYPE html> <html ...
- Python Django的分页,Form验证,中间件
本节内容 Django的分页 Form 中间件 1 Django 分页 1.1 Django自带的分页 1.首先来看下我的测试数据环境 ############ models.py ######### ...
- Django中Form验证
Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 一,Form验证 第一种操作:主要是这三个函数 ...
- Django 博客项目02 Form验证+ 上传头像(预览)+Ajax用户注册
头像预览 $("#avatar_file").change(function(){ // 获取上传的文件对象 var file=$(this)[0].files[0]; // 读取 ...
随机推荐
- mass
@python青岛qq群 1.爬取豆瓣,登录一次爬取后再循环就退出登录,抓不到了: 2.用requests.session试试,只要session对象不释放,就能记住登录状态的cookie: 3.se ...
- Jmeter之数据库性能测试
公司的**产品急待上线,但查询订单操作响应很慢,为了准确定位问题,特对几个大数据查询语句进行性能测试. 环境介绍:数据库用的MYSQL,采用分布式布置,本次单压测一台数据库服务器,查询待支付订单.待消 ...
- MySQL sql_mode 说明(及处理一起 sql_mode 引发的问题)(转)
1. MySQL莫名变成了 Strict SQL Mode 最近测试组那边反应数据库部分写入失败,app层提示是插入成功,但表里面里面没有产生数据,而两个写入操作的另外一个表有数据.因为 insert ...
- Echart ,X轴显示的为tooltip内显示的一部分内容放在上面显示的一部分如下图所示
如图所示:X轴只显示tooltip部分内容解决方案 在xAxis下面,实现方法如下 axisLabel: { interval: 0, formatter:function(value) { var ...
- centos 7.2 同步北京时间 ,多台机器同步时间
linux 系统没有北京时间,同步的是上海时间 linux 系统有两个时钟:一个是硬件时钟,即BIOS时间:另一个是系统时钟,是linux系统Kernel(内核)时间. 系统开启时,系统会读取硬件时间 ...
- 使用IDEA的项目上传到GitHub
使用IDEA的项目上传到GitHub 前提条件: 1.配置好Git(https://jingyan.baidu.com/article/8275fc867b652046a03cf613.html) 2 ...
- SSRS表达式里引用.net dll
在SSRS的表达式里使用了一个.NET的DLL,用来生成条码图片,发布以后用不了. 需要修改一个SSRS的权限配置项,确保Report_Expressions_Default_Permissions的 ...
- zookeeper学习笔记记录
zookeeper的概述: ZooKeeper 本质上是一个分布式的小文件存储系统.提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理.从而用来维护和监控你存储的数据的状态 ...
- JS高级总结
网址:https://www.cnblogs.com/signheart/p/d6c229a5a758ee1dc21ad5ca2042ab8f.html 通常,通过 JavaScript,您需要操作 ...
- C博客01--顺序、分支结构
1.本章学习总结 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 经过一周的初步学习,对C语言我有了一定的认识,也体验到了代码的乐趣,这应该为我以后的学习开了一个好头.在 ...