Откуда в Laravel Jetstream (inertia) prop auth.user?

Может смущать, что в компонентах Vue, которые поставляются с Jetstream (inertia) используются параметры, которые нигде не объявляются — $page.props.auth.user.name. Оказалось, что Inertia самостоятельно подгружает эти параметры, и настраивается этом файле app\Http\Middleware\HandleInertiaRequests.php:

public function share(Request $request)
{
  return array_merge(parent::share($request), [
    'auth' => [
      'user' => $request->user(),
    ],
  ]);
}

Комментарии (1)

  1. Местный 06 января 2025, 01:07(Комментарий был изменён) # 0
    Ага, вот сам задумался, наткнулся на вашу статью первую) Спасибо, действительно…

    /**
    * Define the props that are shared by default.
    *
    * @return array<string, mixed>
    */
    public function share(Request $request): array
    {
    return [
    ...parent::share($request),
    'auth' => [
    'user' => $request->user(),
    ],
    'ziggy' => fn () => [
    ...(new Ziggy)->toArray(),
    'location' => $request->url(),
    ],
    ];
    }

    Этот мидлвар расширяет дефолтный, я так понимаю все последующие уже лучше расширять от этого кастомного. Круто круто)
    *Комментарий будет опубликован после проверки модератором

    Похожие статьи

    Загрузка изображения в Laravel

    Русификация Laravel

    Добавить поле к существующей таблице Laravel

    Как поменять язык в Faker

    Транслитерация URL в Laravel. Примеры str_slug()

    Разработка бота Telegram с помощью Botman на локальном компьютере

    Добавить в botman editMessageText для Telegram

    Laravel Excel - Базовый экспорт

    Валидация данных в Laravel form request

    Laravel: Отношения моделей многие ко многим - belongsToMany

    Laravel: Отношения моделей один ко многим - hasMany, belongsTo

    Как сделать middleware в Laravel 6 - простой пример

    Как русифицировать или поменять шаблон уведомления о сбросе пароля в Laravel

    Создать ссылку на storage из внешнего каталога для Laravel

    Установить Laravel в отдельную папку (site.ru/laravel/)

    Создание form request в Laravel: руководство для начинающих

    Валидация номера кредитной карты на PHP (Laravel)

    Экспорт маршрутов из Laravel в JSON файл

    Связать папку storage с папкой public в Laravel

    Откуда в Laravel Jetstream (inertia) prop auth.user?

    Обработка ошибок в Laravel form request

    Постраничная навигация на Bootstrap в Laravel 8

    Blade - расширить @section с использованием директивы @parent

    Добавить данные об авторизации при каждом запросе к API в Laravel

    Работа с файлами в Laravel Form Request

    Установка Laravel и создание нового проекта

    Работа с вложенными объектами и коллекциями в Laravel form request

    Laravel: Отношение через таблицу-посредника - hasOneThrough()

    Стандартные свойства модели в Laravel

    Laravel: Отношение через таблицу-посредника - hasManyThrough()

    Laravel: Отношения моделей один к одному - hasOne, belongsTo

    Авторизацией и аутентификация в Laravel form request

    Создание уникального индекса в миграции Laravel

    Laravel form request для создания API-запросов

    Настройка команды CRON на хостинге nic.ru для активации Laravel schedule

    HTTP-запросы в Laravel form request - работа с различными типами запросов

    Создание класса модели в Laravel

    Создание таблицы в базе данных (миграции) для модели в Laravel

    Как создать модель в Laravel

    Базовые методы CRUD контроллера для модели в Laravel

    Наш сайт использует куки, нажмите «ОК» если вы не против
    OK