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验证的更多相关文章

  1. Django的Form验证(2)

    Django的Form验证(2) Form的含义及作用: 用于验证用户请求数据合法性的一个组件(校验数据的合法性) Django的Form实现步骤: 创建一个验证用户请求的模板 from django ...

  2. Django的Form验证

    Django的Form验证 Form验证:Form提交Form表单数据验证 针对Form提交的数据进行验证 创建模板 class loginForm() 请求提交给模板,创建对象 obj=loginF ...

  3. Django中Form验证

    Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 一,Form验证 第一种操作:主要是这三个函数 ...

  4. django 使用form验证用户名和密码

    form验证可以减少查询数据库,所以代码先预先验证,有问题可以返回给前端显示 1.在users文件夹下新建forms.py文件,用来验证用户名和密码是否为空,密码长度是否大于6 # -*- codin ...

  5. django的form验证机制

    今天遇到了一个奇怪的问题,django中formview一直返回200,但是却没有执行form_valid方法,然后在其中加了一个form_invalid方法: class StudentRegist ...

  6. Python Django的分页,Form验证,中间件

    本节内容 Django的分页 Form 中间件 1 Django 分页 1.1 Django自带的分页 1.首先来看下我的测试数据环境 ############ models.py ######### ...

  7. Django form验证

    # 模版 class LoginForm(forms.Form): # 模版中的元素 user = forms.CharField(min_length=6,error_messages={" ...

  8. [py][mx]django form验证-给db减压

    django form认证-解压db压力 一般系统都需要前后端都验证 前端验证容器逃逸破解,如通过js console口去发 试想如果后端只有db验证,那么前端无论发什么后端都查询一次db,对db压力 ...

  9. Django 博客项目02 Form验证+ 上传头像(预览)+Ajax用户注册

    头像预览 $("#avatar_file").change(function(){ // 获取上传的文件对象 var file=$(this)[0].files[0]; // 读取 ...

随机推荐

  1. docker安装centos后没有ifconfig命令解决办法

    使用docker pull centos命令下载下来的centos镜像是centos7的最小安装包,里面并没有携带ifconfig命令,导致我想查看容器内的ip时不知道该怎么办 yum provide ...

  2. imp 导入报错

    imp user/passwd file=/data/oracle/oraclesetup/passwd.dmp 报错: Export file created by EXPORT:V11.02.00 ...

  3. FPGA例化ROM存储表格

    FPGA例化ROM存储表格 1.选择ROM 2.填写数据位宽和深度 3.加载ROM初始化信息,coe文件

  4. MySQL死锁分析一例

    Tomcat日志报死锁错误,show innodb status获取死锁信息: ------------------------ LATEST DETECTED DEADLOCK ---------- ...

  5. OpenCV中feature2D——BFMatcher和FlannBasedMatcher

    作者:holybin 原文:https://blog.csdn.net/holybin/article/details/40926315 Brute Force匹配和FLANN匹配是opencv二维特 ...

  6. docker创建image

    =========================================================================在已有image基础上创建一个image======= ...

  7. Behavior开发时找不到Expression.Interactions的问题解决

    比如下面使用Behavior的例子,需要参照:Microsoft.Expression.Interactions.dll. <Window x:Class="VisualStudioB ...

  8. JavaScript 高级特性

    1. 原型Prototype 1.1 构造函数 所谓"构造函数",其实就是一个普通函数,但是内部使用了this变量.对构造函数使用new运算符,就能生成实例,并且this变量会绑定 ...

  9. C89 和 C99 标准比较

    注1: GCC支持C99, 通过 --std=c99 命令行参数开启,如: 代码:gcc --std=c99 test.c    注2:FFMPEG使用的是C99.而VC支持的是C89(不支持C99) ...

  10. 51nod 1162 质因子分解

    https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1162 数据范围大约是2^97,需要高精度计算 可以使用pollard- ...