Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何为多个输入字段设置单个自定义验证消息?_Php_Laravel_Laravel 5_Laravel 5.3 - Fatal编程技术网

Php 如何为多个输入字段设置单个自定义验证消息?

Php 如何为多个输入字段设置单个自定义验证消息?,php,laravel,laravel-5,laravel-5.3,Php,Laravel,Laravel 5,Laravel 5.3,所以,对于每个领域,我都得到这样的信息 如何才能仅获取所有这些的一条消息。在控制器中使用简单的laravel验证: public function rules(Request $request) { if ($request->isMethod('POST')) { return [ "skill" => "required|array", "skillyear.*" => "required_with:skill|numeric",

所以,对于每个领域,我都得到这样的信息
如何才能仅获取所有这些的一条消息。

在控制器中使用简单的laravel验证:

public function rules(Request $request)
{
  if ($request->isMethod('POST')) {
    return [
      "skill" => "required|array",
      "skillyear.*" => "required_with:skill|numeric",
    ];
  }
 public function messages()
{
 return [
     'skill.required'=>'Select at least one skill',
     'skillyear.*.required_with'=>"Experience year is required for the selected skill"
];}
    public function getRequest(Request $request) {

                    $this->validate($request, [
                        'param1' => 'required',
                        'param2' => 'required'
                    ], [
                      'required' => 'Field is required'  
                       ], [
                        'param1' => 'field name 1 - message',
                        'param2' => 'field name 2 - message'
                    ]);

更多信息:

更改如下。添加一个新元素作为
skillyears
,您将在
skillyears
中获得错误,以获得单个错误

    public function getRequest(Request $request) {

                    $this->validate($request, [
                        'param1' => 'required',
                        'param2' => 'required'
                    ], [
                      'required' => 'Field is required'  
                       ], [
                        'param1' => 'field name 1 - message',
                        'param2' => 'field name 2 - message'
                    ]);

可能不准确,但您可以按照自己的想法制作

您可能可以过滤重复消息,但理想情况下,您应该将消息附加到它对应的确切字段,这将使重复消息具有一定的价值您检查了解决方案吗?
    public function getRequest(Request $request) {

                    $this->validate($request, [
                        'param1' => 'required',
                        'param2' => 'required'
                    ], [
                      'required' => 'Field is required'  
                       ], [
                        'param1' => 'field name 1 - message',
                        'param2' => 'field name 2 - message'
                    ]);