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('添加成功');}

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/175515.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解OS--数值编码

信息的表示和处理 寻址和字节顺序 位于0x100处,int类型值0x01234567在大端和小端下的存储。 字符串的存储不受字节序影响。 移位 1.对左移,右边统一补0 2.对右移,分为算术右移,逻辑右移 算术右移下,左边补原最高有效…

OpenCvSharp从入门到实践-(03)像素

目录 像素 1、确定像素位置 2、获取像素的BGR值 3、修改像素的BGR值 像素 图像数字化是指用数字表示图像,每一幅数字图像都是有M行N列的像素组成的,其中每一个像素都存储一个像素值。计算机通常会把像素值处理为256个灰度级别,这256个灰…

k8s中安装consul集群

一、准备知识 headless services一般结合StatefulSet来部署有状态的应用,比如kafka集群,mysql集群,zk集群等,也包括本文要部署的consul集群。 0、consul集群 consul集群的分布式协议算法采用的是raft协议,这意味着必…

折线图-line

业务组件调用代码 <template><lineCom :title"lineComProps.title" :legendDataList"lineComProps.legendDataList":FeatureList"lineComProps.FeatureList" :xAxisData"lineComProps.xAxisData":seriesMultipleFlag"l…

【后端】数据字典自动生成枚举

前言 随着我老板给我灌溉的思想,逐渐开始利用代码来完成一些重复性且没有创造性的工作(我变懒啦),当我发现数据字典可以生成枚举从而大大减少开发时间的时候,我意识到事情的重要性。 数据字典 我一开始在网上找各种代码生成器的框架,然后突然意识到,这个不就是简单的…

2022年MathorCup大数据竞赛B题北京移动用户体验影响因素研究求解全过程文档及程序

2022年MathorCup高校数学建模挑战赛—大数据竞赛 B题 北京移动用户体验影响因素研究 原题再现&#xff1a; 移动通信技术飞速发展&#xff0c;给人们带来了极大便利&#xff0c;人们也越来越离不开移动通信技术带来的各种便捷。随着网络不断的建设&#xff0c;网络覆盖越来越…

XIAO ESP32S3之套件简绍

很高兴收到柴火创客空间寄来的XIAO ESP32S3开发套件。 一、套件介绍 1、电路板部分 一块XIAO ESP32S3主板、一块摄像头接口板&#xff08;可接SD卡&#xff09;&#xff0c;一根2.4G天线。 2、配件部分 一根USB-A转TypeC数据线、一个USB3.0转TypeC转接头、一个SD卡读卡器&am…

vue中keep-alive的使用

什么是keep-alive&#xff1f; keep-alive是一个内置组件&#xff0c;用于缓存和管理组件的状态。 当 keep-alive包裹一个组件时&#xff0c;这个组件的状态将会被缓存起来&#xff0c;而不是每次重新渲染。这在多个视图之间切换时特别有用&#xff0c;可以避免重复的创建和销…

vue项目通过HBuilder打包成apk,实现apk自动更新下载

vue 项目通过 HBuilder 打包成 apk&#xff0c;实现 apk 自动更新下载 1、vue 项目通过 HBuilder 打包成 apk vue 项目在终端执行 npm run build 打包成 dist 文件&#xff0c;生成的 dist 文件在 项目根目录下 在 HBuilder 中 新建一个项目 默认选择 5APP 的默认模板项目…

springboot+vue智能企业设备管理系统05k50

智能设备管理系统主要是为了提高工作人员的工作效率和更方便快捷的满足用户&#xff0c;更好存储所有数据信息及快速方便的检索功能&#xff0c;对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性&#xff0c;遵循开发的系统优化的原则&#xf…

linux 命令 sudo、su 命令

sudo命令详解 1、初识sudo sudo是linux下常用的允许普通用户使用超级用户权限的工具&#xff0c;sudo 用来执行需要提升权限&#xff08;通常是作为 root 用户&#xff09;的命令&#xff0c;允许系统管理员让普通用户执行一些或者全部的root命令&#xff0c;如halt&#xff…

spring boot的redis连接数过多导致redis服务器压力过大的一次问题排查

一、背景 在今天上午的时候&#xff0c;突然收到大量的sentry报错&#xff0c;都是关于redis连接超时的警告。 首先想到的是去查看redis的监控&#xff0c;发现那个时间段&#xff0c;redis的请求数剧增&#xff0c;cpu使用率和带宽都陡增双倍。 下面的是redis监控的cpu情况 …

无代码未来:智能、可视化、自动化的融合

无代码是一个相对较新的概念&#xff0c;不同的人群对其界定可能存在一定的差异。 对于IT专业人士和开发人员而言&#xff0c;无代码通常是指使用可视化界面和拖拽操作来构建应用程序的工具和平台。 无代码平台通过提供预先构建的组件和模块&#xff0c;使得开发人员可以通过简…

基于CW32F030单片机的便携式多功能测试笔

一、产品背景 在日常的硬件调试工作中&#xff0c;我们最常使用的仪器仪表可能就是万用表了&#xff0c;虽然万用表号称“万用”&#xff0c;但大部分时候&#xff0c;我们需要使用到的功能无非是电压测量和通断测量。 作为调试的“得力干将”&#xff0c;万用表有时候也会存…

Windows bat批处理zip打包排除bat文件自身不打包

功能&#xff1a;遍历文件&#xff0c;把文件打包成zip文件&#xff08;不打包 bat 自身文件&#xff09; 文件名&#xff1a; 文件打包成7z-zip包.bat echo off:: 来源&#xff1a;https://www.cnblogs.com/wutou/p/17348784.html :: Date: 2023/04/24 :: :: 使用说明&#…

歌手荆涛演唱的《春节回家》,一种情感的表达和文化的传承

歌手荆涛演唱的《春节回家》&#xff0c;一种情感的表达和文化的传承 春节回家&#xff0c;是中国传统文化中最为重要的传统节日之一&#xff0c;也是亿万华夏儿女最为期待的日子。每当春节临近&#xff0c;无论身在何处&#xff0c;人们都会收拾行囊&#xff0c;踏上归途&…

【5G PHY】5G SS/PBCH块介绍(四)

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 本人就职于国际知名终端厂商&#xff0c;负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作&#xff0c;目前牵头6G算力网络技术标准研究。 博客…

策略算法与Actor-Critic网络

策略算法 教程链接 DataWhale强化学习课程JoyRL https://johnjim0816.com/joyrl-book/#/ch7/main 策略梯度 与前面的基于价值的算法不同&#xff0c;这类算法直接对策略本身进行近似优化。 在这种情况下&#xff0c;我们可以将策略描述成一个带有参数 θ θ θ的连续函数…

基于python的职位推荐系统的设计与实现

点我完整下载&#xff1a;基于python的职位推荐系统的设计与实现.docx 基于python的职位推荐系统的设计与实现 Design and implementation of a job recommendation system based on Python 目录 目录 2 摘要 3 关键词 4 第一章 绪论 4 1.1 研究背景 4 1.2 研究目的与意义 5 1.…

HarmonyOS—ArkTS中@Observed和@ObjectLink装饰器的嵌套类对象属性变化【鸿蒙应用开发】

文章目录 ARKTS中@Observed和@ObjectLink装饰器的嵌套类对象属性变化@Observed 类装饰器说明装饰器参数类装饰器的使用@ObjectLink 变量装饰器说明装饰器参数同步类型允许装饰的变量类型被装饰变量的初始值举例装饰器的限制条件观察变化和行为表现观察的变化框架行为使用场景1.…