123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <?php
- /**
- * Routes configuration.
- *
- * In this file, you set up routes to your controllers and their actions.
- * Routes are very important mechanism that allows you to freely connect
- * different URLs to chosen controllers and their actions (functions).
- *
- * It's loaded within the context of `Application::routes()` method which
- * receives a `RouteBuilder` instance `$routes` as method argument.
- *
- * CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
- * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
- *
- * Licensed under The MIT License
- * For full copyright and license information, please see the LICENSE.txt
- * Redistributions of files must retain the above copyright notice.
- *
- * @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
- * @link https://cakephp.org CakePHP(tm) Project
- * @license https://opensource.org/licenses/mit-license.php MIT License
- */
- use Cake\Routing\Route\DashedRoute;
- use Cake\Routing\RouteBuilder;
- /*
- * This file is loaded in the context of the `Application` class.
- * So you can use `$this` to reference the application class instance
- * if required.
- */
- return function (RouteBuilder $routes): void {
- /*
- * The default class to use for all routes
- *
- * The following route classes are supplied with CakePHP and are appropriate
- * to set as the default:
- *
- * - Route
- * - InflectedRoute
- * - DashedRoute
- *
- * If no call is made to `Router::defaultRouteClass()`, the class used is
- * `Route` (`Cake\Routing\Route\Route`)
- *
- * Note that `Route` does not do any inflections on URLs which will result in
- * inconsistently cased URLs when used with `{plugin}`, `{controller}` and
- * `{action}` markers.
- */
- $routes->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']);
- /*
- * ...and connect the rest of 'Pages' controller's URLs.
- */
- //$builder->connect('/pages/*', 'Pages::display');
- $builder->connect('/plaintext', ['controller' => 'bench', 'action' => 'plaintext']);
- $builder->connect('/json', ['controller' => 'bench', 'action' => 'json']);
- $builder->connect('/db', ['controller' => 'bench', 'action' => 'db']);
- $builder->connect('/queries', ['controller' => 'bench', 'action' => 'queries']);
- $builder->connect('/updates', ['controller' => 'bench', 'action' => 'updates']);
- $builder->connect('/fortunes', ['controller' => 'bench', 'action' => 'fortunes']);
- /*
- * 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.
- * });
- * ```
- */
- };
|