// Давайте есть некоторые маршрут без какой-либо группы
Route::get('/', function() {
return view('welcome');
});
Route::get('/load', '[email protected]');
// Теперь создадим несколько маршрутов с группами
Route::group(['as' => 'admin'], function() {
Route::get('users', function() {
return "users route";
});
Route::get('ravi', function() {
return "ravi route";
});
// Теперь мы собираемся создать маршрут в этой группе, которая будет искать группу администрирования // и распечатать весь маршрут с этой группой.
Route::get('kumar', function() {
$name = 'admin';
$routeCollection = Route::getRoutes(); // RouteCollection object
$routes = $routeCollection->getRoutes(); // array of route objects
// Сейчас в нашем объекте маршрута, мы будем искать наше имя маршрута путем фильтрации // массива.
$grouped_routes = array_filter($routes, function($route) use ($name) {
$action = $route->getAction(); // getting route action
if (isset($action['as'])) {
// for the first level groups, $action['as']
//will be a string
// for nested groups, $action['as'] will be an array
if (is_array($action['as'])) {
return in_array($name, $action['as']);
} else {
return $action['as'] == $name;
}
}
return false;
});
// let's print the array containing the route objects in the 'admin' group
dd($grouped_routes);
});
});
// ** Просто скопируйте и вставьте его в папку маршрута, и вы можете увидеть результат, нажав your_project_public_folder_url/Kumar **
// Я принял помощь от этого ответа Answer of patricus
например, –
: у меня есть столбец с именами разрешений в моей таблице, в которых я буду хранить некоторые конкретные маршруты, относящиеся к определенной группе маршрутов. –