从Laravel 5.7升级指南中:
验证者合同的影响可能性:非常低
验证方法已添加到Illuminate \ Contracts \ Validation \ Validator合同中:/** * Run the validator's rules against its data. * @return array */ public function validate();
如果要实现此接口,则应将此方法添加到实现中。
是吗? 将此方法添加到您的实现中是什么意思?我的代码中有一些验证,例如:
$this->validate($request, [
// rules are placed here...
]);
现在PhpStorm大喊未处理的验证异常 ...
答案 0 :(得分:0)
这基本上意味着,如果您有自己的Illuminate\Contracts\Validation\Validator
实现,则需要实现此方法,因为否则您将得到Fatal error
,就像在this snippet中看到的那样。该合同的默认实现为Illuminate\Validation\Validator
。
因为您没有收到致命错误,所以您的问题必须在其他地方。也许您的问题与嵌套验证有关?根据升级指南,已经发生了根本性的变化。还是您有机会也升级了PHP版本?