如何在 Laravel Validator 中只显示错误信息

How to show only error message in Laravel Validator

我只想要错误消息而不是带有代码的字段

控制器

 $validator = Validator::make(request()->all(),[
        'txtName' =>'required|max:25',
       ]);

     if($validator->fails()) {
            $errors = $validator->errors();
            return redirect()->back()->with('error', $errors);
        }

查看:

@if(session()->has('error'))
{!! \Session::get('error') !!}
@endif

Return:

{"txtName":["The txt name may not be greater than 25 characters."]}

我需要的:

name may not be greater than 25 characters

使用@foreach.

@if(session()->has('error'))

   @foreach($errors->all() as $error as $error)
      <p>{{ $error }}</p>
   @endforeach

@endif

首先使用 withErrors

而不是 with
 if($validator->fails()) {
            $errors = $validator->errors();
            return redirect()->back()->withErrors($errors);
        }

在视图中

@if($errors->any())
     <div class="alert alert-danger">
          <ul class="list-unstyled">
                 @foreach ($errors->all() as $error)
                       <li>{{ $error }}</li>
                 @endforeach
          </ul>
      </div>
 @endif