Вызов функции-члена getBag() при null — Laravel

#php #laravel

#php #laravel

Вопрос:

Используется Laravel 7.0, и эта ошибка отображается всякий раз, когда директива @error blade используется внутри представления.

Я уже выполнил новую установку composer.

 Call to a member function getBag() on null
  

Это происходит без создания какой-либо логики проверки.

Код, который я использую, является:

 @errors('main_error')
{{ $message }}
@enderrors
  

Комментарии:

1. вы выполнили установку Laravel в новый проект? ShareErrorsFromSession промежуточное программное обеспечение находится в web стеке в appHttpKernel.php ?

2. все эти маршруты, которые вы просматриваете, находятся в web.php файле routes?

3. @lagbox Да для обоих, изначально это была установка нового проекта Laravel, и я удалил папку vendor и запустил установку composer.

Ответ №1:

Оказывается, я пытался добавить дополнительное промежуточное программное обеспечение в RouteServerProvider, вместо того, чтобы использовать существующую там функцию middleware () и передавать массив с моим веб-и дополнительным промежуточным программным обеспечением.

Что я сделал:

   Route::middleware('web')
            ->middleware('referral')
            ->namespace($this->namespaces['web'])
            ->group(base_path('routes/web.php'));
  

Что я должен был сделать:

  Route::middleware(['web', 'referral'])
            ->namespace($this->namespaces['web'])
            ->group(base_path('routes/web.php'));