Bishal Paudel
Bishal Paudel

Reputation: 1946

Best way of nesting laravel routes

Route::get('home', 'HomeController@index');
Route::get('home/{menu_slug}', 'HomeController@showMenuContents');
Route::get('home/{menu_slug}/{submenu_slug}', 'HomeController@showSubmenuContents');

I am a very beginner to laravel, in fact I started yesterday. I have heard of nesting routes. I have seen other nesting routes and laravel docs too but I find them quite confusing. How can it be implemented to the routes above.

Upvotes: 0

Views: 58

Answers (2)

Krucamper
Krucamper

Reputation: 371

you must use

 Route::group(['prefix' => 'home'], function()
 {
   Route::get('/{menu_slug}/{submenu_slug}', 'HomeController@showSubmenuContents');
   Route::get('/{menu_slug}', 'HomeController@showMenuContents');
   Route::get('/', 'HomeController@index');  
 }

Upvotes: 0

Laurence
Laurence

Reputation: 60040

You can group the routes

Route::group(['prefix' => 'home'], function()
{
    Route::get('/', 'HomeController@index');
    Route::get('/{menu_slug}', 'HomeController@showMenuContents');
    Route::get('/{menu_slug}/{submenu_slug}', 'HomeController@showSubmenuContents');
}

Upvotes: 2

Related Questions