两种验证方式
1.封装在验证类中
这里使用到了构造器提前new验证器类,因为是extends继承了父类,所以需要在构造器中加入
parent::__construct();

2.使用facade静态调用方式

控制器代码部分

<?php
namespace app\goods\controller;use library\Controller;
use app\goods\logic\QualiLogic;
use think\facade\Request;
use app\goods\validate\SupplierValidate;
use think\facade\Validate;
class Supplier extends Controller
{public function __construct(){parent::__construct();$this->validate = new SupplierValidate();}public function edit_quali(\app\goods\logic\QualiLogic $qualilogic){$postData = Request::post();if($postData){//方法一:更新供应商资质前的验证if (!$this->validate->scene('plan_add')->check($postData)) {$this->error($this->validate->getError());}//方法二:更新供应商资质前的验证//$this->edit_quali_validate($postData);}//方法二:更新供应商资质前的验证public function edit_quali_validate($postData){$rule = ['contacts_name|联系人'=>['require'=>'require',],'reg_address|注册地址'=>['require'=>'require',],'contacts_tel|联系电话'=>['require'=>'require','mobile'=>'mobile'],'pro_range|生产范围'=>['require'=>'require',],'yet_pro|已生产品种'=>['require'=>'require',],'join_pro_cate|合作品种类别'=>['require'=>'require',],'join_pro_name|合作品种名称'=>['require'=>'require',],'is_pro_cert|是否获得生产许可证'=>['require'=>'require',],'pro_cert_name|生产许可证名称'=>['require'=>'require',],'pro_cert_no|生产许可证编号'=>['require'=>'require',],'pro_cert_date|生产许可证效期'=>['require'=>'require',],];Validate::rule($rule);//如果验证不通过,直接输出错误信息if(!Validate::check($postData)){$this->error(Validate::getError());}}

验证规则

<?php
/*** 供应商表必填字段验证*/
namespace app\goods\validate;use think\Validate;class SupplierValidate extends Validate
{protected $rule = ['contacts_name|联系人'=>['require'=>'require',],'reg_address|注册地址'=>['require'=>'require',],'contacts_tel|联系电话'=>['require'=>'require','mobile'=>'mobile'],'pro_range|生产范围'=>['require'=>'require',],'yet_pro|已生产品种'=>['require'=>'require',],'join_pro_cate|合作品种类别'=>['require'=>'require',],'join_pro_name|合作品种名称'=>['require'=>'require',],'is_pro_cert|是否获得生产许可证'=>['require'=>'require',],'pro_cert_name|生产许可证名称'=>['require'=>'require',],'pro_cert_no|生产许可证编号'=>['require'=>'require',],'pro_cert_date|生产许可证效期'=>['require'=>'require',],];protected $message  =   ['contacts_name.require'  =>'产品名称不能为空'];//验证场景,根据场景需要加入上边规则中需要验证的字段protected $scene = ['plan_add'   =>  ['contacts_name','reg_address','contacts_tel','is_pro_cert','yet_pro','join_pro_cate','join_pro_name']];
}

thinkadmin验证器与场景验证相关推荐

  1. Java web接入google身份验证器二次验证

    实现原理参考: https://blog.seetee.me/post/2011/google-two-step-verification/ 第一步: maven工程加入依赖 <dependen ...

  2. Tp51自定义验证器规则手机号码验证

    Tp51自定义验证器规则手机号码验证 上图

  3. PHP实现谷歌验证器二次验证

    一.什么是谷歌身份验证器? 不少网站在登陆或者操作时都需要谷歌身份验证器(Google Authenticator),就是说在输入用户名和密码之后还需要输入一个动态密码,而这个动态密码由手机APP谷歌 ...

  4. php验证器的调用,ThinkPHP5 验证器的具体使用

    这篇文章主要介绍了关于ThinkPHP5 验证器的具体使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 前言: 我们在做API开发的时候,我们会接受客户端传来的参数,大家都知道这个参 ...

  5. ThinkPHP5 验证器validate的使用总结(详细)

    ================================================================== ============ThinkPHP5 验证器validate ...

  6. Django REST framework API 指南(12):验证器

    官方原文链接 本系列文章 github 地址 转载请注明出处 验证器 大多数情况下,您在 REST framework 中处理验证时,只需依赖默认的字段验证,或者在序列化类或字段类上编写明确的验证方法 ...

  7. [EntLib]微软企业库5.0 学习之路——第五步、介绍EntLib.Validation模块信息、验证器的实现层级及内置的各种验证器的使用方法——上篇...

    本文是为后面的学习之路做铺垫,简单介绍下企业库中的Validation模块的一些相关知识,包括Validation模块的简介.用途.使用方法.默认提供的多种验证器的介绍等. 一.简介及用途 在实际的项 ...

  8. jsf 传参数_在JSF 2中对定制验证器进行参数化

    jsf 传参数 在JSF 2中编写自定义验证器并不是一项复杂的任务. 您实现Validator接口,添加@FacesValidator批注,并在faces-config.xml中插入validator ...

  9. 在JSF 2中对定制验证器进行参数化

    在JSF 2中编写自定义验证器并不复杂. 您实现Validator接口,添加@FacesValidator批注,并在faces-config.xml中插入Validator声明, 仅此而已 . 一块蛋 ...

最新文章

  1. python3线程中的锁机制
  2. AI的使用场景破冰开拓商业服务
  3. 临床研究数据分析的6种常用方法
  4. 数学公式的规约(reduce)和简化(simplify)
  5. java高级工程师------struts的知识重点
  6. b-tree的索引页总览
  7. 高端AP的拆解及保护电路设计
  8. wps页眉怎么设置不同页码_如何设置 页眉页脚和页码
  9. 手机wps可以写html吗,如何在手机版WPS Office文档中插入文本框
  10. Thinkpad预装win10硬盘分区
  11. ethtool 开启网卡_技术|如何使用 ethtool 命令管理以太网卡
  12. java写入excel文件,并填充空单元格颜色
  13. 几本.Net的经典书籍
  14. 推荐系统之DIN模型(注意力机制对业务的理解)
  15. 【筛法求素数】HDU-1239 Calling Extraterrestrial Intelligence Again
  16. MySql 如果字段为NULL则返回0
  17. linux opengl配置编译,Linux下OpenGL的安装与cmake编译OpenGL程序
  18. 揭秘Unity3D科幻机甲网页游戏《星之战记》
  19. 使用VMware安装黑苹果
  20. MIPI CSI-2笔记(20) -- 建议的内存存储格式(Recommended Memory Storage)

热门文章

  1. 【PM】3 新产品流程 - 详解NPDP(4)
  2. C++项目实战-实际应用
  3. 量化交易学习-RSI策略1
  4. New Phytologist 投稿指南
  5. 文章采集伪原创工具-免费批量文章采集伪原创发布工具
  6. 麦包包EDM会员经营策划方案:整合邮件产品
  7. 总市值突破300亿元,UCloud今日成功登陆科创板
  8. 大数据从入门到实战-HDFS-JAVA接口之上传文件
  9. vue+elementui查询表格数据页面卡死问题
  10. KPI(Key Performance Indicator,关键绩效指标)