当前位置: 首页 > article >正文

basic-validation-using-flask-gladiator-module-in-python

使用 Python 中的烧瓶-角斗士模块进行基本验证

原文:https://www . geesforgeks . org/basic-验证-使用-烧瓶-角斗士-python 中的模块/

考虑到所有进出系统的非结构化数据,现在各种验证都是必不可少的。除了客户端验证,服务器端验证在 web 开发中也同样重要。本文讨论了一种在各种框架(如 Flask 或 Django)中注入验证的方法。

Python 的烧瓶-角斗士是一个提供以下功能的模块:

  • 允许任何形式的服务器端验证。
  • 可以扩展到任何。py 框架。
  • 允许检查范围、要求、类型等功能。

安装

这个模块没有内置 python,因此必须显式安装

pip 安装烧瓶-角斗士

在本模块中,validate()函数用于完成工作。

语法:

验证(数据、验证器)

参数:

  • ***数据:*考虑中的数据
  • **验证器:**告知必须在什么基础上进行验证
    • **必需:**总是需要验证器来检查字段的存在。
    • format_email : 检查邮件的验证器。
    • 长度 _ 最大值:检查文本的最大长度。
    • 长度 _ 分钟:检查最小文本长度。
    • **长度:**检查特定长度。
    • 类型 _ :检查特定类型。
    • 正则表达式 _ : 检查正则表达式。
    • _ 值:检查特定值。
    • _ 中的**:特定列表中的检查。**
    • lt :检查小于整数值。
    • gt :检查是否大于整数值。
    • 等式:检查相等的整数值。
    • ne :检查不相等的整数值。
    • gte :检查大于等于的整数值。
    • lte :检查小于等于整数值。
    • true_if_empty :如果为空,则该验证器返回 true。
    • skip_on_fail :如果验证失败,可以用这个跳过测试进行验证。

进场:

  • 在初始步骤中,输入数据以字典格式表示。
  • 验证被初始化为元组的元组,其中元组的第一个元素是要检查的键,接下来的值是应该应用于相应键的验证。
  • validate()函数接受验证和输入字典,如果所有验证都为真,则返回 True,否则返回 False。

下面给出了基于不同验证器执行验证的各种实现。

例 1 :

蟒蛇 3

import gladiator as gl

# input test data
valid_data = {
    'email': 'manjeet@gfg.com',
    'password': '123456',
    'name': 'Manjeet',
    'age': 24,
    'access': "User"
}

# assigning validations
field_validations = (
    ('email', gl.required, gl.format_email),
    ('password', gl.required, gl.length_min(5)),
    ('name', gl.required, gl.type_(str)),
    ('age', gl.required, gl.type_(int), gl.eq(24)),
    ('access', gl.required, gl.in_(['User', 'Admin']))
)

# checking data using validate()
print("Validating data : ")
result = gl.validate(field_validations, valid_data)
print("Is data valid ? : " + str(bool(result)))

输出:

验证数据:

数据有效吗?:真

例 2 :

蟒蛇 3

# Using regex, gt and length validators
import gladiator as gl

# input test data
valid_data = {
    'email': 'manjeet@gfg.com',
    'password': '123456',
    'name': 'Manjeet',
    'Gender': 'M',
    'age': 24,

}

# assigning validations
# checks name by regex, gender using length range, age greater than 18.
field_validations = (
    ('email', gl.required, gl.format_email),
    ('password', gl.required, gl.length_min(5)),
    ('name', gl.required, gl.type_(str), gl.regex_('[a-zA-Z][a-zA-Z ]+')),
    ('age', gl.required, gl.type_(int), gl.gt(18)),
    ('Gender', gl.length(1, 4)),
)

# checking data using validate()
print("Validating data : ")
result = gl.validate(field_validations, valid_data)
print("Is data valid ? : " + str(bool(result)))

输出:

验证数据:

数据有效吗?:真


http://www.kler.cn/a/466651.html

相关文章:

  • 嵌入式linux中socket控制与实现
  • 数据挖掘——集成学习
  • 01、Docker学习,第一天:简单入门与安装
  • 3125: 【入门】求1/1+1/2+2/3+3/5+5/8+8/13+13/21……的前n项的和
  • Easticsearch介绍|实战?
  • 如何进一步提高Oracle lgwr的写性能?
  • APM 3.0.2 | 聚合B站、油管和MF的音乐播放器,支持歌词匹配
  • 2025 小模型技术:驱动低代码与物联网融合发展新引擎
  • Markdown段落的空行缩进用法
  • STM32 拓展 RTC(实时时钟)
  • 前端,npm install安装依赖卡在sill idealTree buildDeps(设置淘宝依赖)
  • ElasticSearch11-8.x 新特性
  • JupyterLab notebook环境在Ubuntu24.04下的安装和Windows 10下vscode远程使用jupyter
  • 鸿蒙应用开发搬砖经验之—使用DevTools工具调试前端页面
  • SpringBoot + Vue 项目创建详细步骤
  • BERT算法实现SQuAD问答系统任务和IMDB文本分类任务
  • uniapp 微信小程序 自定义日历组件
  • LiveData 原理分析
  • OpenSSL SSL_connect: Connection was reset in connection to github.com:443
  • 图像去雾 | 基于Matlab的图像去雾系统(四种方法)
  • 【开源】创建自动签到系统—QD框架
  • Statistic for ML
  • 《Java核心技术II》管道化Optional值
  • Flutter中的网络请求图片存储为缓存,与定制删除本地缓存
  • 涡度通量/数据质量控制/数据缺失插补/数据组分拆分/数据可视化分析/气象数据/光敏感性分析/温度敏感性分析/数据风浪区分析
  • 简单使用linux