【问题标题】:How to NOT use full controller path in Laravel routes如何不在 Laravel 路由中使用完整的控制器路径
【发布时间】:2021-06-17 03:52:22
【问题描述】:

在 Laravel 网络路由中,我使用控制器的完整路径,如下所示:

'App\Http\Controllers\frontend\EmailController@index'

这有点冗长和多余。我怎样才能使用这样的路径:

'EmailController@index'

【问题讨论】:

    标签: php laravel laravel-routing


    【解决方案1】:

    这不再是 Laravel 中声明路由的方式。在现代版本中,您应该这样做:

    <?php
    
    use App\Http\Controllers\frontend\EmailController;
    
    Route::get("/email", [EmailController::class, "index"]);
    

    IIRC,对于旧版本,始终假定App\Http\Controllers(或设置为路由服务提供者中的属性),您可以只使用"frontend\EmailController@index",或将其包装在路由组中以删除“前端”前缀:

    <?php
    
    Route::namespace("frontend")->group(function () {
        Route::get("/email", "EmailController@index");
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      • 1970-01-01
      • 2018-10-20
      • 2014-03-05
      • 1970-01-01
      • 2017-11-21
      • 2014-07-20
      相关资源
      最近更新 更多