namespaceを利用したルートグループ化

2019/08/08

Middlewareを利用したルートグループ化と異なり、処理を実装しないルーティングに便利 ネームスペースを省略できる

namespaceファイルの生成

Controllers/namespace/Controllerファイル を作成し、namespaceを設定 例として、App/Http/Controllers/Sample を namespace

namespace App\\Http\\Controllers\\Sample;

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

class SampleController extends Controller
{

    public function index(Request $request)
    {
        $data = ['msg' => 'Sample index'];
        return view('hello.index', $data);  #hello/index.blade.php を作成済
    }

    public function other(Request $request)
    {
        $data = ['msg' => 'Sample Other'];
        return view('hello.index', $data);  #hello/other.blade.php を作成済
    }

}

ルート設定

namespace() でグループ化し、各ルートを設定

Route::namespace('Sample')->group(function() {
    Route::get('/sample', 'SampleController@index');
    Route::get('/sample/other', 'SampleController@other');
});