CakePHP 3 中的路由
routing in CakePHP 3
我正在开发 CakePHP 3.3
我有一些仪表板控制器,它们的名字类似于
DashboardUsersController.php,
DashboardBusinessesController.php,
DashboardCustomersController.php,
etc
我想映射 url 喜欢
http://example.com/dashboard/users/view/param1/param2
这将以 param1
和 param2
作为参数调用 DashboardUsersController.php
class 和 view
函数。
总之我想把urlhttp://example.com/dashboard-users/view/param
改成http://example.com/dashboard/users/view/param
这种类型的映射只有在仪表板出现在域之后才会被执行,否则它将像访问 http://example.com/users/view/param1
时的默认值一样工作,将调用 UsersController.php
到目前为止我做了什么?
因为我是 CakePHP 和路由的新手,我不知道从哪里开始,因此到现在为止什么也没做。我需要你的帮助。
我想你需要的是前缀。使用前缀 dashboard 烘焙您的控制器模型。
用在你身上routes.php
use Cake\Routing\Route\DashedRoute;
Router::prefix('dashboard', function ($routes) {
// All routes here will be prefixed with `/dashboard
$routes->fallbacks(DashedRoute::class);
});
并从控制器中删除该仪表板部分或从您的 table 名称中删除仪表板并使用 --prefix 重新烘焙所有内容。
bin/cake bake all --prefix dashboard
这些链接会对您有所帮助
https://book.cakephp.org/3.0/en/development/routing.html#prefix-routing
我正在开发 CakePHP 3.3
我有一些仪表板控制器,它们的名字类似于
DashboardUsersController.php,
DashboardBusinessesController.php,
DashboardCustomersController.php,
etc
我想映射 url 喜欢
http://example.com/dashboard/users/view/param1/param2
这将以 param1
和 param2
作为参数调用 DashboardUsersController.php
class 和 view
函数。
总之我想把urlhttp://example.com/dashboard-users/view/param
改成http://example.com/dashboard/users/view/param
这种类型的映射只有在仪表板出现在域之后才会被执行,否则它将像访问 http://example.com/users/view/param1
时的默认值一样工作,将调用 UsersController.php
到目前为止我做了什么?
因为我是 CakePHP 和路由的新手,我不知道从哪里开始,因此到现在为止什么也没做。我需要你的帮助。
我想你需要的是前缀。使用前缀 dashboard 烘焙您的控制器模型。
用在你身上routes.php
use Cake\Routing\Route\DashedRoute;
Router::prefix('dashboard', function ($routes) {
// All routes here will be prefixed with `/dashboard
$routes->fallbacks(DashedRoute::class);
});
并从控制器中删除该仪表板部分或从您的 table 名称中删除仪表板并使用 --prefix 重新烘焙所有内容。
bin/cake bake all --prefix dashboard
这些链接会对您有所帮助
https://book.cakephp.org/3.0/en/development/routing.html#prefix-routing