【发布时间】:2021-05-03 14:43:58
【问题描述】:
我开发了一个包并发布到了packagist。我的包包含一个服务提供者和一组路由,包括通过服务提供者类的引导方法加载的默认“/”路由。
$this->loadRoutesFrom(__DIR__.'/routes.php');
但是,每当我访问该站点时,都会执行来自 web.php 的默认路由,而不是来自包的默认路由。包裹中的其他路线似乎也可以正常工作。这种情况有什么问题?
【问题讨论】:
我开发了一个包并发布到了packagist。我的包包含一个服务提供者和一组路由,包括通过服务提供者类的引导方法加载的默认“/”路由。
$this->loadRoutesFrom(__DIR__.'/routes.php');
但是,每当我访问该站点时,都会执行来自 web.php 的默认路由,而不是来自包的默认路由。包裹中的其他路线似乎也可以正常工作。这种情况有什么问题?
【问题讨论】:
你不能从 Laravel 包中覆盖。解决方案只是要求您的包用户删除您在默认路由文件(web.php)中定义的路由。
或者你可以从像这个包https://github.com/awjudd/maintenance-mode这样的中间件覆盖,
【讨论】: