les-anatoliy
@les-anatoliy

Laravel ошибка при artisan route:list?

Ребята, доброго времени суток.
Не могу понять, в чем проблема.
Когда вызываю команду к примеру php artisan route:list, то выдает ошибку
[Symfony\Component\Debug\Exception\FatalErrorException]
Call to a member function getPrefix() on a non-object

а в логах пишет
[2017-01-30 01:24:22] local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to a member function getPrefix() on a non-object' in ***********\app\Http\Controllers\AdminController.php:19


Код всего контроллера
<?php namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Events\AuthTime;
use Auth;

class AdminController extends Controller
{

public $path;

public function __construct(Request $request)
{
event(new AuthTime(Auth::user()));

$this->path = $request->path();

view()->share('currentPrefix', $request->route()->getPrefix());
view()->share('currentRouteName', $this->currentRouteName());
}
}

Laravel версии 5.2
  • Вопрос задан
  • 346 просмотров
Решения вопроса 1
v_decadence
@v_decadence
При вызове php artisan route:list используются конструкторы контроллеров, чтобы получить middleware, которые могут быть там заданы.
$request->route() отдаёт null, так как по сути никакой роут не используется в данный момент.

Нужно оборачивать в проверку:
$route = $request->route();
$prefix = $route ? $route->getPrefix() : null;
view()->share('currentPrefix', $prefix);


Либо через App::runningInConsole().
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы