dcat-admin icon indicating copy to clipboard operation
dcat-admin copied to clipboard

form表单使用rules()写正则验证只能支持简单正则

Open nicoun opened this issue 5 years ago • 2 comments

  • Laravel Version: #.#.#
  • PHP Version: #.#.#
  • Dcat Admin Version: #.#.#

Description:

正则匹配,如果是复杂匹配,就会出现正则表达式错误问题,我看了下,是“|”的原因,正则验证会按照“|”进行拆分,但这样的话就达不到表单验证的需求了 image

Steps To Reproduce:

nicoun avatar Nov 16 '20 10:11 nicoun

后续版本会修复这个问题,感谢反馈

jqhph avatar Nov 17 '20 02:11 jqhph

我也有类似的问题,不过是在关系字段,用的正则表达式是直接从示例中拷贝的。同样的正则用在非关系字段就可以, 对于关系字段该如何验证呢?文档中没有提到这方面。

$form->text('address.postal_code')->rules('regex:/^\d+$/');

错误信息: Method Illuminate\Validation\Validator::validateRegex:/^\d+$/ does not exist. {"exception":"[object] (BadMethodCallException(code: 0): Method Illuminate\Validation\Validator::validateRegex:/^\d+$/ does not exist. at C:\laragon\www\taxwork2\vendor\laravel\framework\src\Illuminate\Validation\Validator.php:1515) [stacktrace]

sprklinginfo avatar Nov 25 '21 04:11 sprklinginfo