名称空间如何在laravel路由组内部工作

时间:2018-12-01 09:48:37

标签: php laravel namespaces

Routes在Laravel中这样定义,我想知道Route :: get如何引用父类/命名空间。

Route::group(['namespace' => 'site'], function()
{
 Route::get('/home', function(){});
}

我的意思是如何在Route :: group中设置Rout :: get cloud获取参数

1 个答案:

答案 0 :(得分:0)

命名空间是您在其中创建文件的文件夹名称

示例:

app/Http/Controllers/内,您已经创建了文件夹site,并在其中放置了一个名为MyController.php

的文件。

因此您可以将namespace="site"路由组添加到所有路由,所有控制器都在site文件夹内。

Route::group(['namespace' => 'site'], function()
{
 Route::get('/home','MyController@home');
 Route::get('/test','MySecondController@test');
}

在MyController.php内,您将使用以下行:

<?php

namespace App\Http\Controllers\site;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;


class MyController extends Controller
{
    public function home(Request $request){
        return view('home');
    }   
}

与MySecondController.php中的相同,您必须添加:

namespace App\Http\Controllers\site;