2016-02-05 64 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

哈哈,碰巧给我们所有人! :) –