Как разделить список ошибок проверки в laravel

Код в лезвии

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

Name: <input type = "text" name = "name">
Phone: <input type = "text" name = "phone">
Email: <input type = "text" name = "email">

Код проверки

 $data = $this->validate($request,[
        'name' => 'required',
        'phone' => 'required',
        'email' => 'required',
    ]);

Я хочу отображать каждую ошибку в соответствующем поле ввода.

Вы также можете добавить проверку для стороны клиента. Не предоставляйте доступ к контроллеру, пока проверка не будет успешной!

Manohar Khadka 25.07.2018 10:43
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
1
53
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Вы должны добавить сообщение об ошибке после поля ввода

<div class = "form-group {{ $errors->has('name') ? 'has-error' : ''}}">
    <label for = "name" class = "col-sm-3 control-label">Name: </label>
    <div class = "col-sm-7">
        <input class = "form-control" required = "required" name = "name" type = "text" id = "name">
        {{ $errors->first('name', '<p class = "help-block">:message</p>') }}
    </div>
</div>

Я не знал, что вы можете передать второй параметр для форматирования сообщения, это очень здорово, спасибо.

Ian 25.07.2018 10:49

Чтобы отображать каждую ошибку отдельно, вы можете просто использовать $errors->first() и передать имя поля, которое вы запрашиваете. См. Следующий пример.

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

Name: <input type = "text" name = "name">
{{ $errors->first('name') }}
Phone: <input type = "text" name = "phone">
{{ $errors->first('phone') }}
Email: <input type = "text" name = "email">
{{ $errors->first('email') }}

Уведомление после каждого поля, которое я называю $errors->first()

Name: <input type = "text" name = "name">
<small class = "text-danger">{{ $errors->first('name') }}</small>
Phone: <input type = "text" name = "phone">
<small class = "text-danger">{{ $errors->first('phone') }}</small>
Email: <input type = "text" name = "email">
{{ $errors->first('email') }}

Если условие не требуется, если вы не хотите отображать все ошибки на месте.

Также может отображаться два типа сообщения об ошибке.

{{ $errors->first('name') }}
<small class = "text-danger">{{ $errors->first('phone') }}</small>

Другие вопросы по теме