Django之Form验证
view.py 配置
from django import forms
from django.forms import fields
# Create your views here. class f1form(forms.Form):
user = fields.CharField(max_length=10,min_length=5,required=True,error_messages={'required':'不能为空','max_length':'太长了'}) #required不能为空
pwd = fields.CharField(max_length=9,min_length=6,required=True)
age = fields.IntegerField(required=True,error_messages={'required':'不能为空','invalid':'年龄格式错误'}) #invalid所有格式错误可以用这个
email = fields.EmailField(required=True,min_length=6,error_messages={'required':'不能为空','invalid':'邮箱格式错误'})
#user pwd age email 需要跟from表单里面的name 值一致 def f1(request):
if request.method == "GET":
return render(request,'f1.html')
elif request.method == "POST":
# u = request.POST.get('user')
# p = request.POST.get('pwd')
# e = request.POST.get('email')
# a = request.POST.get('age')
# print(u,p,e,a ) f = f1form(request.POST) #拿到上面的class 然后把post 里面传递进去进行验证
v = f.is_valid() #表示验证中
if v: #全部验证成功
print("验证成功",f.cleaned_data) #打印用户提交的数据,是一个字典数据
return redirect('http://www.xunlei.tv')
else:
print("验证失败",f.errors) #打印用户所有的错误数据
return render(request,'f1.html',{'f':f})
html 配置
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form id="fm" action="f1.html" method="POST">
{{ f.errors }}
<input type="text" name="user">{{ f.errors.user.0}} </br>
<input type="text" name="pwd">{{ f.errors.pwd.0 }} </br>
<input type="text" name="email">{{ f.errors.email.0 }} </br>
<input type="text" name="age">{{ f.errors.age.0 }} </br>
<input type="submit">
<input type="button" value="ajax提交" onclick="aj()">
</form> <script src="/static/jquery-3.3.1.min.js"></script>
<script>
function aj() {
$.ajax({
url:'/f1.html',
type:'POST',
data:$('#fm').serialize(),
success:function(arg) {
alert(arg);
}
})
}
</script>
</body>
</html>
Django之Form验证的更多相关文章
- Django的Form验证(2)
Django的Form验证(2) Form的含义及作用: 用于验证用户请求数据合法性的一个组件(校验数据的合法性) Django的Form实现步骤: 创建一个验证用户请求的模板 from django ...
- Django的Form验证
Django的Form验证 Form验证:Form提交Form表单数据验证 针对Form提交的数据进行验证 创建模板 class loginForm() 请求提交给模板,创建对象 obj=loginF ...
- Django中Form验证
Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 一,Form验证 第一种操作:主要是这三个函数 ...
- django 使用form验证用户名和密码
form验证可以减少查询数据库,所以代码先预先验证,有问题可以返回给前端显示 1.在users文件夹下新建forms.py文件,用来验证用户名和密码是否为空,密码长度是否大于6 # -*- codin ...
- django的form验证机制
今天遇到了一个奇怪的问题,django中formview一直返回200,但是却没有执行form_valid方法,然后在其中加了一个form_invalid方法: class StudentRegist ...
- Python Django的分页,Form验证,中间件
本节内容 Django的分页 Form 中间件 1 Django 分页 1.1 Django自带的分页 1.首先来看下我的测试数据环境 ############ models.py ######### ...
- Django form验证
# 模版 class LoginForm(forms.Form): # 模版中的元素 user = forms.CharField(min_length=6,error_messages={" ...
- [py][mx]django form验证-给db减压
django form认证-解压db压力 一般系统都需要前后端都验证 前端验证容器逃逸破解,如通过js console口去发 试想如果后端只有db验证,那么前端无论发什么后端都查询一次db,对db压力 ...
- Django 博客项目02 Form验证+ 上传头像(预览)+Ajax用户注册
头像预览 $("#avatar_file").change(function(){ // 获取上传的文件对象 var file=$(this)[0].files[0]; // 读取 ...
随机推荐
- Jrebel 配置
先下载插件 http://139.199.89.239:1008/88414687-3b91-4286-89ba-2dc813b107ce http://jrebel.autoseasy.cn/xix ...
- Sql 无法解决 equal to 运算中 "Chinese_PRC_CI_AS" 和 "Chinese_PRC_90_CI_AI" 之间的排序规则冲突
导致问题原因为创建时,表所使用的排序规则不一致 解决办法: 在对比条件后增加 collate Chinese_PRC_90_CI_AI 的转义即可 如: where test1.FieldName = ...
- Java中的锁分类与使用
1. Java锁的种类 在笔者面试过程时,经常会被问到各种各样的锁,如乐观锁.读写锁等等,非常繁多,在此做一个总结.介绍的内容如下: 乐观锁/悲观锁 独享锁/共享锁 互斥锁/读写锁 可重入锁 公平锁/ ...
- java-log4j日志打印
参考路径: https://blog.csdn.net/edward0830ly/article/details/8250412 https://www.cnblogs.com/ITtangtang/ ...
- py-day4-2 python 内置函数
zip() #zip 拉链方法 一一对应 只要是序列类型的都可以 print(list(zip(('a','b','c'),(1,2,3)))) 结果: [('a', 1), ('b', 2), (' ...
- docker容器以ROOT账号登录(获取ROOT权限/ROOT密码)
第一步:查看容器的CONTAINER ID docker ps 第二步:获取root权限,例如需要进入的CONTAINER ID为4650e8d1bcca docker exec -ti -u roo ...
- php7 使用dom动态生成xml文档
<?php $dom = new DomDocument('1.0','gb2312'); //创建DOM对象 $store = $dom->createElement('store'); ...
- 简单的爬虫爬的完整的<img>标签,修改正则即可修改爬取内容
简单的爬虫爬的完整的<img>标签,生成<img>标签结果文件与爬虫经历的网页. <?php/** 从给定的url获取html内容** */function _getUr ...
- maven项目pom.xml添加main启动类
pom.xml配置添加main启动类: <build> <finalName>MyApp</finalName> <!-- 最终package打包的jar名称 ...
- 廖雪峰Java8JUnit单元测试-2使用JUnit-3参数化测试
参数化测试: 可以把测试数据组织起来 用不同的测试数据调用相同的测试方法