setRouteClass(DashedRoute::class); $routes->scope('/', function (RouteBuilder $builder): void { /* * Here, we are connecting '/' (base path) to a controller called 'Pages', * its action called 'display', and we pass a param to select the view file * to use (in this case, templates/Pages/home.php)... */ $builder->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']); $builder->prefix('Admin', function (RouteBuilder $adminRouteBuilder): void { $adminRouteBuilder->connect('/users/view', ['controller' => 'Pages', 'action' => 'view']); $adminRouteBuilder->connect('/users/index', ['controller' => 'Pages', 'action' => 'index']); }); /* * Connect catchall routes for all controllers. * * The `fallbacks` method is a shortcut for * * ``` * $builder->connect('/{controller}', ['action' => 'index']); * $builder->connect('/{controller}/{action}/*', []); * ``` * * You can remove these routes once you've connected the * routes you want in your application. */ $builder->fallbacks(); }); /* * If you need a different set of middleware or none at all, * open new scope and define routes there. * * ``` * $routes->scope('/api', function (RouteBuilder $builder): void { * // No $builder->applyMiddleware() here. * * // Parse specified extensions from URLs * // $builder->setExtensions(['json', 'xml']); * * // Connect API actions here. * }); * ``` */ };