Пользовательская страница Laravel для 404 исключений - PullRequest
0 голосов
/ 12 октября 2019

Я столкнулся с проблемой - я не могу отобразить пользовательское представление для ошибки Laravel 5.8 404.

У меня есть файл resources/views/errors/404.blade.php, который я хочу показать посетителям.

Согласнок документации Laravel (https://laravel.com/docs/5.8/errors#custom-http-error-pages) больше ничего не требуется, настраиваемое представление для 404 ошибок должно отображаться без проблем.

У меня есть поставщик услуг, вот его boot метод:

public function boot ()
{

    abort (404); // if i generate a 404 error from here, everything works fine and 404.blade.php is displayed without problems

    View :: composer (['*'], function ($view) {

    abort (404); // but if i generate a 404 error from here, it displays NotFoundHttpException 

});

Оказывается, что вызов abort (404) из анонимной функции не позволяет отображать пользовательское представление при ошибке 404 ???

ОБНОВЛЕНИЕ

если я генерирую ошибку 404 из анонимной функции, я получаю следующее исключение:

Symfony\Component\Debug\Exception\FatalErrorException thrown with message "Uncaught Symfony\Component\HttpKernel\Exception\NotFoundHttpException in C:\Downloads\OSPanel\domains\site.com\vendor\laravel\framework\src\Illuminate\Foundation\Application.php:992
Stack trace:
#0 C:\Downloads\OSPanel\domains\site.com\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php(46): Illuminate\Foundation\Application->abort(404, '', Array)
#1 C:\Downloads\OSPanel\domains\site.com\app\Providers\SiteViewServiceProvider.php(70): abort(404)
#2 C:\Downloads\OSPanel\domains\site.com\app\Providers\SiteViewServiceProvider.php(42): App\Providers\SiteViewServiceProvider->getAntiLocaleURL()
#3 C:\Downloads\OSPanel\domains\site.com\vendor\laravel\framework\src\Illuminate\View\Concerns\ManagesEvents.php(164): App\Providers\SiteViewServiceProvider->App\Providers\{closure}(Object(Illuminate\View\View))
#4 C:\Downloads\OSPanel\domains\site.com\vendor\laravel\framework\src\Illuminate\Events\Dispatcher.php(344): Illuminate\View\Factory->Illuminate\View\Concerns\{closure}('composing: erro...', Array)
#5 C:\Do"

Stacktrace:
#0 Symfony\Component\Debug\Exception\FatalErrorException in C:\Downloads\OSPanel\domains\site.com\vendor\laravel\framework\src\Illuminate\Foundation\Application.php:992
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...