Laravel的自定义验证$parameters返回null
我正在输入字段username上创建自定义验证customVal。我将其他输入作为参数发送,但参数的值被接收为null 在我的控制器中,我有:Laravel的自定义验证$parameters返回null,laravel,validation,parameters,null,laravel-5.4,Laravel,Validation,Parameters,Null,Laravel 5.4,我正在输入字段username上创建自定义验证customVal。我将其他输入作为参数发送,但参数的值被接收为null 在我的控制器中,我有: $this->validate(request(),[ 'username' => 'customVal: firstname', ]); 在app\Providers\AppServiceProviders上,我将第一个参数作为测试转储: public function boot() { \Validator::extend('c
$this->validate(request(),[
'username' => 'customVal: firstname',
]);
在app\Providers\AppServiceProviders上,我将第一个参数作为测试转储:
public function boot()
{
\Validator::extend('customVal', function ($attribute, $value, $parameters, $validator)
{
dd( Request::get($parameters[0]) ."-". request($parameters[0]) ."-". Input::get($parameters[0]) ."-". $parameters[0] );
return true;
});
}
显示
--名字
…该值为null,但我可以获取它的名称firstname。为了确保,当我在控制器上转储时:
dd( $request->get('firstname') ."-". request('firstname') ."-". Input::get('firstname') ."-". 'firstname' );
我得到:
我的名字我的名字我的名字名字名字
基本上就是这样,我无法进行自定义验证,因为我无法获取任何值
我猜当我尝试使用require\u而不进行所有验证时,也会发生同样的情况。因为它无法识别我在字段中写入的参数删除验证数组中:和firstname之间的空格。删除验证数组中:和firstname之间的空格。问题解决了!非常感谢,我真不敢相信我在这上面浪费了这么多时间。我能接受你的评论作为正确的答案吗?我这样做是为了让你能接受。