【问题标题】:How to override Laravel default routes with my package如何用我的包覆盖 Laravel 默认路由
【发布时间】:2021-05-03 14:43:58
【问题描述】:

我开发了一个包并发布到了packagist。我的包包含一个服务提供者和一组路由,包括通过服务提供者类的引导方法加载的默认“/”路由。

$this->loadRoutesFrom(__DIR__.'/routes.php');

但是,每当我访问该站点时,都会执行来自 web.php 的默认路由,而不是来自包的默认路由。包裹中的其他路线似乎也可以正常工作。这种情况有什么问题?

【问题讨论】:

    标签: php laravel laravel-8


    【解决方案1】:

    你不能从 Laravel 包中覆盖。解决方案只是要求您的包用户删除您在默认路由文件(web.php)中定义的路由。

    或者你可以从像这个包https://github.com/awjudd/maintenance-mode这样的中间件覆盖,

    【讨论】:

    • 我试图在服务提供商的引导功能中放置一个重定向,但即使这样也不起作用。
    • 不要在启动时放置重定向,而是在中间件上尝试
    猜你喜欢
    • 2017-01-17
    • 2017-08-30
    • 2019-09-04
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2011-06-19
    • 1970-01-01
    相关资源
    最近更新 更多