我的验证规则如下所示:
$validator = Validator::make($request->all(),[ 'name' => 'required|min:5|max:255','email' => [ 'required','max:255','email',Rule::unique('users')->ignore($id),],'password' => 'min:6|confirmed',[ 'confirmed' => 'Hasło musi się zgadzać','unique' => 'Wpisz inny adres email,ten adres jest zajęty','required' => 'To pole jest wymagane.','min' => 'To pole musi mieć minimum :min znaków.',]); if ($validator->fails()) { return redirect('/panel/users/'.$id.'/edit') ->withErrors($validator) ->withInput(); }
当我在没有更改密码的情况下编辑用户时,验证器以“min”规则失败.正如你所看到我的验证器不需要密码,为什么验证?
解决方法
它看起来像你想要的.
$validator->sometimes('password','min:6|confirmed',function ($input) { return (strlen($input->password) > 0); });