在使用 Laravel 表单验证功能时,有时我们想实现当表单的 input 有值时才进行验证,否则忽略表单验证条件,比如下面的需求:
$this->validate($request, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'min:6',
]);
上面的 password 验证规则,要求密码至少要6位以上,在创建用户的时候,符合需求。而在更新用户信息时,我们一般设置如果 password 为空代表不修改密码,但是如果 password 为空,仍然会执行密码至少为6位的验证,导致表单验证失败,无法提交。
解决方法是使用 nullable 规则,表示验证字段可以为 null ,如果不是 null 那么就执行后续的验证规则。
$this->validate($request, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'nullable|min:6',
]);
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel表单验证仅当验证字段有值时才进行验证的方法
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » Laravel表单验证仅当验证字段有值时才进行验证的方法