zoukankan      html  css  js  c++  java
  • TP5.0 关于validate验证器add和edit验证规则不统一的复杂情形

    TP5.0 关于validate验证器add和edit验证规则不统一的复杂情形

    在validate验证,这里不提模型中验证和控制器中验证,说的是validate类,也是官方推荐的验证方式

     问题是,在add中使用一套,在edit中有些字段得不一样怎么办,这时候就想到了validate中的场景scene验证,简单的edit验证,在scene里就能实现,这里记录的是复杂的情形,直接上代码

    第一种方法:

    add时:

    1 //添加管理员表
    2 $result = $this->model->validate('appadminvalidatejqorgAdmin')
    3     ->validateFailException(true)->allowField(true)->save($params);
    4 if ($result === false) {
    5     $this->error($this->model->getError());
    6 }

    edit时:

     1 //这里需要针对username做唯一验证
     2 $adminValidate = 	hinkLoader::validate('appadminvalidatejqorgAdmin');
     3 $adminValidate->rule([
     4     'username' => 'require|unique:admin,username,' . $row->id,
     5     'password' => 'regex:S{32}',
     6 ]);
     7 $result = $row->validate('appadminvalidatejqorgAdmin')->allowField(true)->validateFailException(true)->save($params);
     8 if ($result === false) {
     9     $this->error($row->getError());
    10 }

    第二种方法:

  • 相关阅读:
    std::sort运行出core(segment fault)
    C++编译报错:重复定义
    《改变世界的九大算法》读书笔记
    简单排序实现
    Django 常见错误总结
    python 进行机器学习
    python中matplotlib 的简单使用
    十四:生成器函数和迭代器函数
    十三:装饰器函数
    十二:重要的内置函数
  • 原文地址:https://www.cnblogs.com/cyfblogs/p/13589147.html
Copyright © 2011-2022 走看看