【问题标题】:Laravel: changing the location of the Exception handler classLaravel:更改异常处理程序类的位置
【发布时间】:2016-02-05 06:37:29
【问题描述】:

我们正在重构应用程序的文件夹布局,使其更符合DDD 域驱动程序设计理念。

例如

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

虽然我们遇到的一个问题是重新定位/Exceptions/Handler.php 类。我们的视图会将其重命名为ExceptionHandler 并将其放在/app 目录的根目录中。

我们得到

PHP 致命错误:未捕获的 ReflectionException:类 App\Exceptions\Handler 不存在...

重新定位后的错误。

我假设 Laravel 对位于那个确切位置的文件有很强的依赖关系,对吗?

【问题讨论】:

  • composer dump-autoload了吗?

标签: php twitter-bootstrap api laravel domain-driven-design


【解决方案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
);

【讨论】:

  • 哈哈,发生在我们所有人身上! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-15
  • 1970-01-01
  • 2012-10-10
  • 1970-01-01
  • 2015-02-18
  • 2015-09-03
  • 1970-01-01
相关资源
最近更新 更多