[英]Multiple Route file in laravel 5/ multiple folder for routes
我陷入了一个问题。 为路由创建文件夹,并为不同的路由定义不同的文件。 像我有3种类型的用户。 管理员,用户1,用户2。 我想为路线创建3个不同的子文件夹。 我搜索谷歌并实现这一点。 但它不起作用。 任何人都可以帮助我。
谢谢
<?php namespace App\Providers;
use Illuminate\Routing\Router;
use File;
use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;
class RouteServiceProvider extends ServiceProvider {
/**
* This namespace is applied to the controller routes in your routes file.
*
* In addition, it is set as the URL generator's root namespace.
*
* @var string
*/
protected $namespace = 'App\Http\Controllers';
/**
* Define your route model bindings, pattern filters, etc.
*
* @param \Illuminate\Routing\Router $router
* @return void
*/
public function boot(Router $router)
{
parent::boot($router);
//
}
/**
* Define the routes for the application.
*
* @param \Illuminate\Routing\Router $router
* @return void
*/
public function map(Router $router)
{
$router->group(['namespace' => $this->namespace], function($router)
{
foreach(File::allFiles(app_path().'/Http/Routes') as $route) {
require_once $route->getPathname();
}
});
}
}
它可以帮助其他人:
我有一个来自多个Laravel应用程序的4个子域的多租户应用程序。 我想将每个子域的路由保留在单独的文件中。
基于所接受的答案,在Laravel 5.4 I修改mapWebRoutes()
方法在RouteServiceProvider.php
如下:
protected function mapWebRoutes()
{
Route::group([
'middleware' => 'web',
'domain' => 'subdomain1.yoursba.com',
'namespace' => $this->namespace,
], function ($router) {
require base_path('routes/subdomain1Routes.php');
});
Route::group([
'middleware' => 'web',
'domain' => 'subdomain2.yoursba.com',
'namespace' => $this->namespace,
], function ($router) {
require base_path('routes/subdomain2Routes.php');
});
}
我知道这已经晚了,但对于其他人,请查看此博客文章。 它可能正是您在寻找的东西https://arjunphp.com/multiple-routes-files-laravel-5/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.