Как вывести сообщение ->with(‘success’) laravel?

Для вывода сообщения с помощью метода with('success') в Laravel, есть несколько подходов. Вот некоторые из них:

1. С использованием функции-помощника session():
Метод with() возвращает экземпляр объекта RedirectResponse, который имеет метод session(). Мы можем использовать эту функцию для установки значений в сессию их последующего отображения. Например:

return redirect()->route('home')->with('success', 'Сообщение об успехе!');

Далее, в представлении или шаблоне, можно проверить наличие сообщения об успехе и отобразить его с помощью функций-помощников session() и соответствующего ключа:

@if (session()->has('success'))
    <div class="alert alert-success">
        {{ session('success') }}
    </div>
@endif

2. С использованием объекта сообщений:
Laravel предоставляет также объект сообщений, который можно использовать для сохранения сообщений для отображения в следующем запросе. Пример:

session()->flash('success', 'Сообщение об успехе!');
return redirect()->route('home');

Аналогично, в представлении или шаблоне, можно проверить наличие сообщения об успехе и отобразить его:

@if (session()->has('success'))
    <div class="alert alert-success">
        {{ session('success') }}
    </div>
@endif

3. С использованием фасада Session:
Laravel также предоставляет фасад Session, который можно использовать для установки и получения значений из сессии. Пример:

use IlluminateSupportFacadesSession;

Session::flash('success', 'Сообщение об успехе!');
return redirect()->route('home');

Проверка наличия сообщения и его отображение будет аналогичным предыдущим:

@if (Session::has('success'))
    <div class="alert alert-success">
        {{ Session::get('success') }}
    </div>
@endif

Важно учесть, что сообщения, установленные с помощью метода with(), метода flash() или посредством фасада Session, будут доступны только в следующем запросе и будут автоматически удалены после его отображения.