fastadmin框架自带的数据效验

2023-11-29 22:04

本文主要是介绍fastadmin框架自带的数据效验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、fastadmin框架介绍:

注意:

二、fastadmin框架自带效验 

三、引用方式:

1.引用:

2.使用案例:


一、fastadmin框架介绍:

FastAdmin是基于ThinkPHP和Bootstrap开发的一款开源后台管理系统框架。它提供了丰富的功能模块和扩展,可以帮助开发者快速构建高效、灵活的后台管理系统。

以下是FastAdmin框架的主要特点和功能:

  1. 基于ThinkPHP:FastAdmin框架采用了流行的PHP框架ThinkPHP作为底层开发框架,具有良好的可扩展性和稳定性。

  2. 后台模板:FastAdmin内置了多套精美的后台管理系统模板,支持自定义主题风格,方便开发者根据需求进行界面定制。

  3. 后台权限管理:FastAdmin提供了完善的后台权限管理功能,包括角色管理、用户管理、权限设置等,可以灵活控制用户对系统功能和数据的访问权限。

  4. 插件机制:FastAdmin支持插件机制,可以方便地引入第三方插件扩展系统功能,例如文件上传、数据导出、验证码等。

  5. 快速生成代码:FastAdmin集成了代码生成器,可以根据数据库表结构快速生成CURD代码,减少重复劳动,提高开发效率。

  6. 接口开发支持:FastAdmin框架支持API接口开发,可以方便地构建前后端分离的应用,并提供了接口文档自动生成功能。

  7. 多语言支持:FastAdmin支持多语言功能,可以根据用户设置切换不同的语言显示,方便国际化应用开发。

  8. 数据库管理工具:FastAdmin集成了数据库管理工具,可以方便地进行数据库备份、优化和修复等操作。

  9. 完善的扩展机制:FastAdmin框架提供了丰富的扩展接口和插件机制,开发者可以根据需求进行二次开发和功能扩展。

总体而言,FastAdmin框架是一个功能强大、易用灵活的后台管理系统框架,适用于各种规模的项目开发。它具有丰富的功能模块和良好的扩展性,可以大大缩短开发周期,提高开发效率。

FastAdmin框架提供了多种数据验证的方式,包括前端验证和后端验证。

  1. 前端验证:

    • 使用HTML5提供的表单验证功能,例如requiredminlengthmaxlengthpattern等属性。
    • 使用JavaScript库,如jQuery Validate、layui form等,通过设置规则和错误提示信息来实现验证。
  2. 后端验证:

    • 使用FastAdmin框架内置的验证器(Validator)进行数据验证。可以在控制器(Controller)中使用验证器对用户提交的数据进行验证。例如:
// 在控制器方法中进行验证
public function save()
{// 定义验证规则$rules = ['name' => 'require|max:20','email' => 'require|email','age' => 'number|between:18,60',];// 定义错误提示信息$messages = ['name.require' => '姓名必填','name.max' => '姓名最多20个字符','email.require' => '邮箱必填','email.email' => '邮箱格式不正确','age.number' => '年龄必须是数字','age.between' => '年龄只能在18到60之间',];// 进行验证$result = $this->validate(input(), $rules, $messages);if ($result !== true) {// 验证未通过,输出错误信息return json(['code' => 0, 'msg' => $result]);}// 验证通过,继续处理业务逻辑// ...
}

注意:

上述代码中的input()函数是FastAdmin框架提供的全局函数,用于获取用户提交的数据。

另外,FastAdmin框架还支持自定义验证规则、扩展验证器等功能,可以根据具体需求进行配置和使用。

二、fastadmin框架自带效验 

FastAdmin框架是基于ThinkPHP开发的后台管理系统框架,它内置了一些常用的数据验证规则,可以在控制器中使用这些规则对用户提交的数据进行有效性验证。以下是FastAdmin框架自带的常用数据验证规则示例:

1.必填验证:'require',表示字段必须填写。

'字段名' => 'require'

2.数字验证:'number',表示字段必须为数字。

'字段名' => 'number'

3.整数验证:'integer',表示字段必须为整数。

'字段名' => 'integer'

4.浮点数验证:'float',表示字段必须为浮点数。

'字段名' => 'float'

5.数字范围验证:'between:起始值,结束值',表示字段必须在指定的范围内。

'字段名' => 'between:1,100'

6.字符长度验证:'length:最小长度,最大长度',表示字段的字符长度必须在指定的范围内。

'字段名' => 'length:3,10'

7.字符串验证:'alpha',表示字段必须为纯字母字符串。

'字段名' => 'alpha'

 8.数字和字母验证:'alphaNum',表示字段必须为数字和字母组合。

'字段名' => 'alphaNum'

 9.手机号码验证:'mobile',表示字段必须为合法的手机号码格式。

'字段名' => 'mobile'

 10.邮箱验证:'email',表示字段必须为合法的邮箱地址格式。

'字段名' => 'email'

 以上是FastAdmin框架自带的一些常用数据验证规则示例,你可以根据具体的需求选择合适的规则进行数据验证。在控制器中使用时,可以通过$this->validate($data, $rules)方法进行验证,其中$data为待验证的数据数组,$rules为验证规则数组。

11.URL验证:'url',表示字段必须为合法的URL地址格式。

'字段名' => 'url'

12.IP地址验证:'ip',表示字段必须为合法的IP地址格式。

'字段名' => 'ip'

13.正则表达式验证:'regex:正则表达式',表示字段必须匹配指定的正则表达式。

'字段名' => 'regex:/^\d{6}$/'

 14.枚举值验证:'in:值1,值2,值3',表示字段必须在指定的值列表中。

'字段名' => 'in:男,女'

15.邮政编码验证:'zip',表示字段必须为合法的邮政编码格式。

'字段名' => 'zip'

16.身份证号码验证:'idCard',表示字段必须为合法的身份证号码格式。

'字段名' => 'idCard'

 17.日期格式验证:'date',表示字段必须为合法的日期格式。

'字段名' => 'date'

这些是FastAdmin框架常用的数据验证规则示例,您可以根据具体的业务需求选择适合的规则进行数据验证。记得在控制器中使用$this->validate($data, $rules)方法进行验证,其中$data为待验证的数据数组,$rules为验证规则数组。希望对您有所帮助!

三、引用方式:

1.引用:

use think\Validate;

2.使用案例:

 public function add(){if(!$this->request->isPost())$this->error('请求失败,请使用POST方式请求');$data = ['custom_id'=>$this->request->post('custom_id'), //客户id'name'=>$this->request->post('name'), //客户名称'tel'=>$this->request->post('tel'), //联系方式'sex'=>$this->request->post('sex'), //性别 0女 OR 1男'contact_WX'=>$this->request->post('contact_WX'), //联系人WX'contact_QQ'=>$this->request->post('contact_QQ'), //联系人QQ'contact_email'=>$this->request->post('contact_email'), //联系人邮箱'title'=>$this->request->post('title'), //称谓'department'=>$this->request->post('department'), //部门'position'=>$this->request->post('position'), //职位'create_time' => time(),];$role = ['custom_id' => 'require','name' => 'require|max:20',// 'tel' => 'require|regex:/^1\d{10}$/','tel' => 'require|regex:/^1\d{10}$/','sex' => 'require|between:0,1','contact_email' => 'require|email','title'=>'require','department'=>'require',];$msg = ['custom_id.require'=>'缺少参数custom_id','name.require'=>'缺少参数name','name.max'=>'名字最大20个字','tel.require'=>'缺少参数tel','tel.regex'=>'手机号码格式错误','sex.require'=>'缺少参数sex','sex.between'=>'参数仅为0 OR 1','contact_email.require'=>'缺少参数contact_email','contact_email.email'=>'邮件格式错误','title.require'=>'缺少参数title','department.require'=>'缺少参数department',];$validate = new Validate($role,$msg);   //$role效验规则   $msg规则错误时返回if(!$validate->check($data))$this->error($validate->getError());if(!db('contact')->insert($data))$this->error('添加失败');$this->success('添加成功');}

以上是常用的效验规则,如想查看更多可见相关文档。

这篇关于fastadmin框架自带的数据效验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/434473

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

pandas数据过滤

Pandas 数据过滤方法 Pandas 提供了多种方法来过滤数据,可以根据不同的条件进行筛选。以下是一些常见的 Pandas 数据过滤方法,结合实例进行讲解,希望能帮你快速理解。 1. 基于条件筛选行 可以使用布尔索引来根据条件过滤行。 import pandas as pd# 创建示例数据data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dav

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者