2016-02-05 42 views
0

我們正在重構我們的應用程序的文件夾佈局,因此它與DDD域驅動程序的設計理念更爲一致。Laravel:更改異常處理程序類的位置

例如

/app 
    /Users 
    /Jobs 
    /Authentication 
    /Http 
    /Console 
    /... 
/bootstrap 
/config 
/... 

儘管我們遇到的一個問題是搬遷/Exceptions/Handler.php類。我們的視圖會將其重命名爲ExceptionHandler,並將其放在/app目錄的根目錄中。

我們搬遷之後得到

PHP Fatal error: Uncaught ReflectionException: Class App\Exceptions\Handler does not exist ...

錯誤。我想假設Laravel對該文件在該EXACT位置有很大的依賴性,這是正確的嗎?

+0

你有'composer dump-autoload'嗎? – Rob

回答

1

您還必須更新它在服務容器中的綁定。 以下示例來自Laravel 5.2,但我猜它應該與所有Laravel 5+相同。

// bootstrap/app.php 
$app->singleton(
    Illuminate\Contracts\Debug\ExceptionHandler::class, 
    App\Exceptions\Handler::class // Change this line with the new namespace 
); 
+0

*臉巴掌*應該有這個想法.... – AndrewMcLagan

+0

哈哈,碰巧給我們所有人! :) –