phplaravellaravel-5laravel-routinglaravel-views

Laravel Route Group for Views


I have below configuration in my Laravel /routes/web.php:

Route::group(['prefix' => 'admin'], function(){
    Route::get('/', function() {
        return view('admin.login');
    });
});

If you observe, I have mentioned view('admin.login') this calls /resources/views/admin/login.blade.php. Which holds good as of now.

But for this Route group, I will have all my views inside /resources/views/admin. Thus, I do not want to use admin before every view-name.

Is there any possible parameter at Route::group level by which I can define namespace of my views, so that the Laravel searches my views in the particular directory inside /resources/views/?


Solution

  • I faced the same problem and created a helper function it worked ... added a helpers directory under app directory app\Helpers\functions.php

    function adminView($file){
       return view('foo.' . $file);
    }
    

    in composer.json file registered this file

    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        },
        "files": ["app/Helpers/functions.php"]
    },
    

    just run composer dump-autoload and you can use this helper function