Nee*_*eel 19 validation laravel laravel-validation laravel-5.3
由于将laravel从5.1升级到5.3,我在验证方面遇到了一些奇怪的问题.
当我发布这样的数据时:
firstName null
Run Code Online (Sandbox Code Playgroud)
验证规则如下:
$validator = Validator::make($postData, [
'firstName' => 'string|max:255',
'lastName' => 'string|max:255'
]);
Run Code Online (Sandbox Code Playgroud)
上面的消息失败了"The XYZ must be a string.".我不明白的是:
为什么验证失败时未设置为required?意思是,它应该忽略它,如果值为空则不抛出错误,对吧?
如果将值设置为null?,为什么验证失败?
为什么在根本没有发送参数时验证失败?(就像lastName根本没有张贴的那样)
Laravel 5.3验证中有什么变化吗?
Ale*_*nin 57
添加nullable规则:
'firstName' => 'string|max:255|nullable',
'lastName' => 'string|max:255|nullable'
Run Code Online (Sandbox Code Playgroud)
验证领域可能是
null.这在验证原语(如字符串和可包含null值的整数)时特别有用.
当您想要某些东西是必需的但值本身可以为空时,例如空字符串。
Validator::make($postData, [
'firstName' => 'present|string|max:255|nullable',
'lastName' => 'present|string|max:255|nullable'
]);
Run Code Online (Sandbox Code Playgroud)
在“注释”等场景中很有用,可以通过从所有文本中删除输入字段并点击“保存”来清空“注释”。
| 归档时间: |
|
| 查看次数: |
20017 次 |
| 最近记录: |