laravel6 设置多模块多路由

很多时候由于项目比较庞大,需要讲项目的代码文件通过文件夹分类,这个时候由于受框架路由等限制会导致访问出现问题,当然 多个模块的路由如果放在同一个文件里 找起来也会很费劲,那么我们可不可以把模块区分开,并且把每个模块的路由也区分开呢,可以的

 

 比如上图中我就是为了后台在controller中创建了一个Admin模块文件夹,用来存放后台的控制器文件,下方routes里新建一个admin.php文件用来存放后台所有的路由文件,但是新建完 发现是404,看来是需要做一些配置才能用,那都哪些地方需要配置呢?

 

1.     app\Providers\RouteServiceProvider.php

   

添加定义方法
// protected function mapAdminRoutes()
// {
// Route::prefix('admin')
// ->namespace($this->namespace.'\Admin')   (注:这里指定的就是你的后台模块的地址以及模块文件夹的名称)
// ->group(base_path('routes/admin.php'));
// }
 
 
然后在map方法中进行调用
$this->mapWebRoutes();
 
2 app/Http/keneral.php中添加配置
 
protected $middlewareGroups中添加
 
'api' => [
'throttle:60,1',
\Illuminate\Routing\Middleware\SubstituteBindings::class
],
 
'admin'=> [
'throttle:60,1',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
'bindings'
],
 
3最后再routes 下 新建对应的路由文件 例如 admin.php
 
 
以上三步都执行完之后   通过路由访问一下 就可以了哦,有问题加群问吧。

 

posted @ 2021-01-19 14:37  大白驴  阅读(704)  评论(0编辑  收藏  举报