如何在 blade 文件中的输入字段下方显示错误消息 - Laravel

How to show error message below input field in blade file - Laravel

我正在使用 laravel 中的规则验证输入,目前,我正在使用以下代码在验证失败时在我的视图中显示错误。

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

以上代码的问题是所有错误都集中在一个地方。如何在各自的输入(如姓名、电子邮件、密码等)下方显示错误。我在哪里可以定义我的自定义错误消息?谢谢

每个字段都可以这样使用

<div class="form-group row">
    <label for="name" class="col-md-4 col-form-label text-md-right">{{ __('Name') }}</label>
        <div class="col-md-6">
            <input id="name" type="text" class="form-control{{ $errors->has('name') ? ' is-invalid' : '' }}" 
            name="name" value="{{ old('name') }}" autofocus>
                @if ($errors->has('name'))
                <span class="invalid feedback"role="alert">
                    <strong>{{ $errors->first('name') }}.</strong>
                </span>
        @endif
    </div>
</div>

从 Laravel 5.8.13 开始,您可以使用 @error blade 指令。只需将您想要的错误标记放在输入字段下方:

@error('field-name')
    <div class="alert alert-danger">{{ $message }}</div>
@enderror

如果验证 field-name 时出错,将显示与错误相关的消息。

关于自定义验证错误消息,请查看 Custom Error Messages 上的 Laravel 文档以获取更多信息。