2016-04-11 10 views
1

でリストとしてルートは私がroutes.phpファイルにこれらのルート定義があるとし、サブです:私はこれらのルートを表示すると、それは順不同リストとしてサブルートだ何らかの理由で表示ルートとそれがlaravel

Route::group(
      array (
       'prefix' => 'admin' 
      ), 
      function() { 

         Route::group(['prefix' => 'user'], function() { 
          Route::get('usersData', ['as' => 'usersData', 'uses' => '[email protected]']); 
          Route::get('getOrgLevelAsJson/{user_id}', ['uses' => '[email protected]']); 
         }); 
         Route::resource('/user', 'UserController'); 

         Route::group(['prefix' => 'role'], function() { 
          Route::get('rolesData', ['as' => 'rolesData', 'uses' => '[email protected]']); 
          Route::post('applyPerms', ['as' => 'applyPerms', 'uses' => '[email protected]']); 
         }); 
         Route::resource('/role', 'RoleController'); 

        } 
       ); 
      } 
     ); 

そして今、このように:

<ul> 
    <li>admin/user 
     <ul> 
      <li>usersData</li> 
      <li>getOrgLevelAsJson/{user_id}</li> 
      <li>create</li> 
      <li>user/{user}</li> 
      <li>{user}/edit</li> 
     </ul> 
    </li> 

    <li>admin/role 
     <ul> 
      <li>applyPerms</li> 
      <li>rolesData</li> 
      <li>create</li> 
      <li>role/{role}</li> 
      <li>role/{role}/edit</li> 
     </ul> 
    </li> 
</ul> 

私はそれが定義されたすべてのルートを取得するためにRoute::getRoutes()を使用することができます知っているが、私は、そのサブのルートをルートを得ることができるのか分かりません。

私はLaravel 5.2を使用しています。

答えて

1
<?php 
$routeCollection = Route::getRoutes(); 
$mainRoutes = []; 
$allRoutes = []; 
foreach ($routeCollection as $value) { 
    array_push($allRoutes, $value->getPath()); 
    $url = explode('/', $value->getPath()); 
    if (!in_array($url[0], $mainRoutes)) { 
     array_push($mainRoutes, $url[0]); 
    } 
} 
?> 
<ul> 
    @foreach($mainRoutes as $main_route) 
     <li> 
      {{$main_route}} 
      <ul> 
       <?php 
       foreach ($allRoutes as $route) { 
       $url = explode('/', $route); 
       if($main_route == $url[0]){ 
       ?> 
       <li>{{url($route)}}</li> 
       <?php 
       } 
       } 
       ?> 

      </ul> 
     </li> 
    @endforeach 
</ul> 
+0

ありがとう@アダム、本当の解決策でした。あなたは素晴らしいです –

+0

あなたは歓迎です:) –

関連する問題