表单验证需要在字段的属性上面定义verify
选项,可以是自定义匿名回调函数,也可以实例化easyadmin\app\libs\Verify
类,然后配置规则
表单验证区分必填和非必填, 所以必填单独做了一个验证选项
#project\app\admin\controller\Category.php
namespace app\admin\controller;
use easyadmin\app\libs\PageForm;
use easyadmin\app\columns\form\FormText;
class Category extends \easyadmin\controller\Admin
{
/**
* 配置表单
* @param PageForm $page
*/
protected function configFormField(PageForm $page)
{
$page
->addField('name', '分类名称', FormText::class,[
'required' => true, //是否必填
//定义验证规则, 用户输入的值长度大于0 个字符才会进入验证
// 1. 使用 Verify 类,然后配置规则
'verify' => (new Verify())
->addRule('chinese', '名称请输入中文')
->addRule('maxlength', '名称不能超过5个字符', 5)
->addRule('minlength', '名称不能少于过2个字符', 2)
->addRule('reg', '请输入 重庆', '/^重庆$/') // 使用正则自定义验证规则
// 2. 声明匿名函数验证
// 验证正确 返回 true 错误返回错误提示 注: 正必须是 返回 true
'verify' => function ($val) {
if ($val != '583161908') {
return 'QQ 群是 583161908, 请输入: 583161908';
}
return true;
}
]);
}
}