CakePHP 3 覆盖默认路由
CakePHP 3 override default route
由于 Router::promote();
已在 CakePHP 3 中删除,应该使用什么来覆盖插件中 Config/routes.php 中设置的路由?
说我想覆盖
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
与
$routes->connect('/', ['plugin' => 'Plugin','controller' => 'Pages', 'action' => 'displayInPlugin']);
解决方案是简单地将 Plugin::routes();
放在默认路由上...哦。
Plugin::routes();
Router::scope('/', function ($routes) {
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
$routes->fallbacks('InflectedRoute');
});
由于 Router::promote();
已在 CakePHP 3 中删除,应该使用什么来覆盖插件中 Config/routes.php 中设置的路由?
说我想覆盖
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
与
$routes->connect('/', ['plugin' => 'Plugin','controller' => 'Pages', 'action' => 'displayInPlugin']);
解决方案是简单地将 Plugin::routes();
放在默认路由上...哦。
Plugin::routes();
Router::scope('/', function ($routes) {
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
$routes->fallbacks('InflectedRoute');
});