web 表单的校验

本文介绍了Web表单的校验方法,包括前端校验和后端校验,强调了两者在安全性上的区别。文章重点讨论了Django的form插件,如何定义表单类,以及表单的校验过程。通过实例展示了表单的POST请求需包含CSRF,并提到了Debug断点在提高开发技巧中的重要性。

·
  校验
    ⒈前端校验:
      使用 js 或者 jq 校验,主要目的是对网页上的数据进行校验。
      开发难度低,但是安全性不够高。
      
    ⒉后端校验:
      在视图当中,对要存入数据库的数据进行校验,需要后端编写。
      比较复杂,但安全性比较高。
    
    通常我们在工作中,前端校验和后端校验都会用到。
    
    而 Django 考虑到前端校验和后端校验的复杂度问题,推出了 form 插件。
    
  ㈠、Django 的 form 表单定义
    
    ⒈定义 form 表单类,数据类型和 django 的 modles 相似
     首先:
       在 app 路径下,创建一个 form.py 文件。
       在这里插入图片描述
    ⒉
      在视图当中调用 form 表单类

在这里插入图片描述
    ⒊
      在前端进行渲染
      在这里插入图片描述
      之前还有 table 表单渲染,不过已经被废除了。
      
      来看一下浏览器效果
      在这里插入图片描述
      
      ————————————————————————————

在这里插入图片描述
    在这里插入图片描述
    ——
    所以!千万别忘了,POST请求必须有CSRF
    在这里插入图片描述
    在这里插入图片描述
    ㈡、表单校验
       
       在这里插入图片描述
       是否能很好的使用 Debug 断点,是提高技巧的必要条件
       
       ——————
       
     form表单类字段通用的校验

     required=True		是否允许为空,默认为True,不可以空
     
     widget=None			添加HTML属性
     
     label=None			前端展示的标签
     
     initial=None		初始值
     
     help_text=''		帮助文本(类似于提示语)
     
     error_messages=None	错误提示
     
     disabled=False		是否禁用
     

·
    在工作中的使用方法
    在这里插入图片描述
    1
    在这里插入图片描述

    ls_valid			判断提交的数据是否符合 form 类 校验的规则
    
    cleaned_data		校验通过之后,字典形式的数据
    
    errors			后端返回的错误

在这里插入图片描述
    在这里插入图片描述
    ——————
    
    自定义校验
    
    在这里插入图片描述
    图中和这个def clean_username方法是自动执行的
    
    这个时候,如果注册账号时,username=“admin”。
    那么信息不回储存到数据库。
    
    通过 Debug 断点可以查看注册过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值