gpt4 book ai didi

laravel - laravel 中 `requiredIf` 验证的自定义错误消息

转载 作者:行者123 更新时间:2023-12-02 18:02:04 25 4
gpt4 key购买 nike

我正在开发一个 Laravel 5.8 项目,并尝试显示使用 requiredIf 验证规则的验证的自定义验证消息。

这是我的设置方法:

$validation = Validator::make(
$request->all(),
[
...
'sum' => [
Rule::requiredIf(function() use ($request){
$model = Model::find($request->id);
return $model->is_special; //returns a boolean value
}),
'numeric'
],
...
],
[
...
'sum.required_if' => 'This cannot be blank',
'sum.numeric' => 'Must use a number here',
...
]
);

现在验证工作正常,numeric 验证的自定义消息显示为应该的,但我收到的 requiredIf() 方法的消息是 Laravel 的默认错误消息。

我还尝试使用 'sum.requiredIf' => '...' 但这也不起作用,并且似乎找不到此场景的任何文档或示例。

最佳答案

我对此进行了一段时间的修改,并注意到要使其发挥作用,我需要定义

'sum.required' => '这不能为空'

而不是'sum.required_if' => '这不能为空',

不确定这是否是预期行为或只是一种解决方法,但我的推论是使用回调 Rule::requiredIf(function() use ($request){...}) 参数:other:value 未传递,因此它会退回到 required 消息传递,我想这是有道理的,因为 required_if > 和 required 不能用在同一个 :attribute 上。

希望这对遇到此问题的任何人都有帮助。

关于laravel - laravel 中 `requiredIf` 验证的自定义错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58629943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com