【问题标题】:Controller and routes - Laravel 8控制器和路由 - Laravel 8
【发布时间】:2026-02-12 11:05:02
【问题描述】:

我会知道如何在不重复使用的情况下将所有控制器插入路由中......使用......

示例:

<?php use Illuminate\Support\Facades\Route;
      use App\Http\Controllers\DB;
      use App\Http\Controllers\DB1;
      use App\Http\Controllers\DB2;
      use App\Http\Controllers\DB3;
      use App\Http\Controllers\DB4;
      use App\Http\Controllers\DB5;
      use App\Http\Controllers\DB6;
      etc.....
      Route::get('/', function () {
          return view('welcome');
      });

如何一次插入很多控制器? 非常感谢。

附: DB1,DB2,etcc 是例子 XD

【问题讨论】:

    标签: php laravel routes controller


    【解决方案1】:

    在 laravel 8 中使用 web.phprouting 与以前的相同,您不需要导入控制器。你可以做以下工作:

    1. App\Providers\RouteServiceProvider.php 添加$namespace
    class RouteServiceProvider extends ServiceProvider {
       // add this line
       protected $namespace = 'App\Http\Controllers';
    }
    
    1. 第二次添加$namespacebootRouteServiceProvider方法:
    public function boot() {
       //...... other codes   
    
       //add the below code
       $this->routes(function() {
          Route::middlware('web')->namespace($this->namespace);
       });
    }
    

    【讨论】:

    • 我尝试了您的解决方案,但没有奏效。 Secondo 解决方案,这是我最后的办法啊哈哈
    • 尝试重新启动您的项目,然后重新运行它。
    • 我收到错误 404 - 未找到
    【解决方案2】:

    你可以的

    use App\Http\Controllers\{DB, DB1, DB2, ...};
    

    更多参考Here

    【讨论】:

    • 谢谢,我会尝试,但我不会手动编写每个控制器啊哈哈。没有一种方式可以调用控制器文件夹中的所有文件?