Laravel 6 验证:规则数量有限制?

我使用的是Laravel 6.13.1。


我有以下验证


$validator = Validator::make($request->all(), [

    'name' => 'required|max:100',

    'email' => 'required|email',

    'mobile_number' => 'required',

    'date_of_birth' => 'required',

    'address' => 'required',

    'category' => 'required',

    'other_category' => 'required_if:category,==,Others',

    'sub_caste' => 'required',

    'photo' => 'required',

    'status' => 'required|integer',

    'father_name' => 'required',

    'father_occupation' => 'required',

]);



if ($validator->fails()) {

    return back()->withErrors($validator)->withInput();                    

}

它有12条规则,它有效。如果我再添加一个规则,则验证程序将停止工作。


{{$errors}} 在视图文件中给出一个空数组。


编辑1:具有12个规则的验证显示所有错误消息,但是如果我再添加一个验证,例如


$validator = Validator::make($request->all(), [

    'name' => 'required|max:100',

    'email' => 'required|email',

    'mobile_number' => 'required',

    'date_of_birth' => 'required',

    'address' => 'required',

    'category' => 'required',

    'other_category' => 'required_if:category,==,Others',

    'sub_caste' => 'required',

    'photo' => 'required',

    'status' => 'required|integer',

    'father_name' => 'required',

    'father_occupation' => 'required',

    'mother_name' => 'required',         

]);

然后没有错误消息。{{$errors}} 是一个空数组。


在我看来,我正在使用以下代码来列出错误


      @if (count($errors) > 0)

      <div class="alert alert-danger">

        <ul>

          @foreach ($errors->all() as $error)

          <li>{{ $error }}</li>

          @endforeach

        </ul>

      </div>

      @endif

编辑2:我在Laravel 5.5上尝试了相同的验证,并且缩进效果很好。


子衿沉夜
浏览 101回答 2
2回答

SMILET

我不认为它有限制,但是您可以创建一个请求并将所有验证放在它上面,如下所示:php&nbsp;artisan&nbsp;make:request&nbsp;UserRequest您可以查看此链接&nbsp;表单请求验证

梦里花落0921

我遇到了同样的问题,并在某个地方发现这可能是由错误消息的大小引起的。我已将SESSION_DRIVER env选项从“cookie”更改为“file”,并且它起作用了!
打开App,查看更多内容
随时随地看视频慕课网APP