【问题标题】:How can I create routes similar to Auth::routes()如何创建类似于 Auth::routes() 的路由
【发布时间】:2019-04-05 02:43:12
【问题描述】:

我创建了一个带有路由的 laravel 包。我想做一些类似于 Laravel 的身份验证脚手架 Auth::routes() 的事情,将它们注入到您想要包含它们的任何文件中(即 api.phpweb.php)。

我正在使用

public function boot()
{
    ...
    $this->loadRoutesFrom(__DIR__.'/routes/api.php');
    ...
}

但这使得路线可以从任何地方获得,这是我不想要的。 我知道我应该使用Service Container,但这是我的第一个包,也是第一次创建自己的服务提供者,所以我不太确定如何操作,也找不到有关如何将这些用于路由的文档.

相反,我希望能够按照以下方式做一些事情:

//routes/api.php
Route::group(['prefix'=>'v1', 'middleware:auth-api'], function(){
    Logging::routes(); //<-----
    ...
});

【问题讨论】:

    标签: laravel routing


    【解决方案1】:

    简单的解决方案,创建一个具有声明路由的静态方法的类。

    // your/package/Logging.php
    
    class Logging
    {
        public static method routes()
        {
            ...your routes...
        }
    }
    
    // routes/web.php
    
    use Your/Package/Logging;
    
    Logging::routes();
    

    【讨论】:

    • 我的意思是,这行得通...不是我想要的,但没有其他建议。
    猜你喜欢
    • 2017-05-12
    • 1970-01-01
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2012-10-25
    • 1970-01-01
    相关资源
    最近更新 更多