validation - Laravel 自定义验证失败并显示一条好消息
问题描述
我需要添加自定义验证失败,我可以添加这样的消息
$validator->errors()->add('my_number', 'validation.not_in');
我收到的错误消息是validation.not_in
我需要的是这样的错误消息-The selected My Favourite Number is invalid.
我已经\resources\lang\en\validation.php
配置好将正确的消息传递attributes
给它。它基本上是这样的:
return [
...
'not_in' => 'The selected :attribute is invalid.',
....
'attributes' => [
'my_number' => 'My Favourite Number'
],
];
失败的解决方案
我能想到的一个解决方案是去 Laravel 源代码并找到一个文件vendor\laravel\framework\src\Illuminate\Validation\Validator.php
,找到一个函数addFailure
并制作它public
而不是protected
.
然后我就可以做类似的事情
$validator->addFailure('my_number', 'not_in', []);
当我这样做时,我收到了我的消息,The selected My Favourite Number is invalid.
正如预期的那样!
但我无法更改 Laravel 的源代码
请给我另一种选择。
解决方案
推荐阅读
- material-ui - 如何使用带有 Formik 的 Switch 组件(material-ui)修复可选字段的验证
- redis - 返回节点名称而不是类型/标签?
- reflection - 如何使用私有构造函数反映导入包中的类?
- php - 如何动态设置 CSV 导出的标题?
- c++ - 以相反顺序输出输入问题并改进算法以解决相等数字的功能
- r - 按 ID 将行重定位到列
- html - 如何使用 Selenium 定位按钮
- python - 线图的 Matplot 库图(python)
- css - 同一页面提供不同的视觉输出
- openshift - 获取 H2OFrame 作为对象,而不是获取对 H2O 集群中某个位置的引用